Function at 0x4d8d60
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5a5195
mov eax, dword fs:[0]
push eax
mov eax, 0x2610
call fcn.0059f510
mov eax, dword [0x5f300c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
lea ecx, [ebp - 0x23f0]
mov dword [ebp - 0x2510], eax
mov eax, dword [ebp + 0x18]
push eax
call fcn.00472850
mov dword [ebp - 0x484], 0
mov dword [ebp - 0x480], 0
mov dword [ebp - 0x47c], 0
mov byte [ebp - 0x478], 0
mov dword [ebp - 0x474], 0xffffffff
push str.elsif_if_split_while
lea ecx, [ebp - 0x484]
mov dword [ebp - 4], 0
call fcn.00475270
push 0
push 0x80
push str.rwxoRWXOezsfdlpSbctugkTBMAC
push 0
lea ecx, [ebp - 0x261c]
call fcn.0047c3f0
push 0
push 0x80
push str._____:_____.
push 0
lea ecx, [ebp - 0x2610]
mov byte [ebp - 4], 1
call fcn.0047c3f0
push 0
push 0x80
push str.qrwx
push 0
lea ecx, [ebp - 0x2604]
mov byte [ebp - 4], 2
call fcn.0047c3f0
push 0
push 0x80
push 0x5af0cf
push 3
lea ecx, [ebp - 0x2588]
mov byte [ebp - 4], 3
call fcn.0047c3f0
push 0
push 0x80
push 0x5bb7f4
push 0
lea ecx, [ebp - 0x25f8]
mov byte [ebp - 4], 4
call fcn.0047c3f0
push 1
push 0x80
push 0x5bb7ec
push 7
lea ecx, [ebp - 0x25c4]
mov byte [ebp - 4], 5
call fcn.0047c3f0
push 1
push 0x80
push 0x5bb7e4
push 3
lea ecx, [ebp - 0x25ec]
mov byte [ebp - 4], 6
call fcn.0047c3f0
push 1
push 0x80
push 0x5bb814
push 3
lea ecx, [ebp - 0x25e0]
mov byte [ebp - 4], 7
call fcn.0047c3f0
mov byte [ebp - 4], 8
push 0
push 0x80
push 0x5bb810
push 4
lea ecx, [ebp - 0x25b8]
call fcn.0047c3f0
push 0
push 0x80
push 0x5bb80c
push 7
lea ecx, [ebp - 0x2594]
mov byte [ebp - 4], 9
call fcn.0047c3f0
push 0
push 0x80
push str._________t
push 0
lea ecx, [ebp - 0x25ac]
mov byte [ebp - 4], 0xa
call fcn.0047c3f0
push 0
push 0x80
push 0x5bb834
push 4
lea ecx, [ebp - 0x25d4]
mov byte [ebp - 4], 0xb
call fcn.0047c3f0
push 0
push 0x80
push 0x5bb830
push 3
lea ecx, [ebp - 0x25a0]
mov byte [ebp - 4], 0xc
call fcn.0047c3f0
mov dword [ebp - 0x2500], 0
mov dword [ebp - 0x24fc], 0
mov word [ebp - 0x24f8], 0
mov dword [ebp - 0x24f4], 0
mov byte [ebp - 0x24f0], 0
mov eax, dword [ebp + 0x10]
xor ebx, ebx
mov edi, dword [ebp + 0xc]
add eax, edi
mov esi, dword [ebp + 0x14]
mov byte [ebp - 4], 0xe
mov dword [ebp - 0x2568], 1
mov dword [ebp - 0x250c], ebx
mov dword [ebp - 0x2514], ebx
mov dword [ebp - 0x2508], ebx
mov dword [ebp - 0x256c], 5
mov dword [ebp - 0x257c], ebx
mov dword [ebp - 0x2578], eax
cmp esi, 0x17
je 0x4d8ff4
cmp esi, 0x18
je 0x4d8ff4
cmp esi, 0x19
je 0x4d8ff4
cmp esi, 0x2a
je 0x4d8ff4
cmp esi, 0x3d
je 0x4d8ff4
cmp esi, 0x3e
jne 0x4d9051
sub esi, 0x2a
neg esi
sbb esi, esi
and esi, 0xffffffed
add esi, 0x29
cmp edi, 1
jbe 0x4d9020
mov ecx, dword [ebp - 0x23f0]
push edi
push ecx
mov eax, dword [ecx]
call dword [eax + 0x10]
movsx eax, al
cmp eax, esi
je 0x4d9020
dec edi
cmp edi, 1
ja 0x4d9006
mov ecx, dword [ebp - 0x23f0]
push edi
push ecx
mov eax, dword [ecx]
call dword [eax + 0x14]
mov edx, dword [ebp - 0x23f0]
push eax
push edx
mov eax, dword [edx]
call dword [eax + 0x18]
mov esi, dword [ebp - 0x23f0]
mov edi, eax
mov ecx, dword [esi]
mov edx, dword [ecx + 0x10]
lea ecx, [edi - 1]
push ecx
push esi
call edx
movsx esi, al
cmp esi, 6
je 0x4d91d1
cmp esi, 0x1b
je 0x4d91d1
cmp esi, 0x14
je 0x4d91d1
cmp esi, 0x1c
je 0x4d91d1
cmp esi, 0x11
je 0x4d91d1
cmp esi, 0x1d
je 0x4d91d1
cmp esi, 0x12
je 0x4d91d1
cmp esi, 0x2b
je 0x4d91d1
cmp esi, 0x40
je 0x4d91d1
cmp esi, 0x39
je 0x4d91d1
cmp esi, 0x41
je 0x4d91d1
cmp esi, 0x36
je 0x4d91d1
cmp esi, 0x42
je 0x4d91d1
cmp esi, 0x37
je 0x4d91d1
cmp esi, 0x1a
je 0x4d91a9
cmp esi, 0x1e
je 0x4d91a9
cmp esi, 0x2c
je 0x4d91a9
cmp esi, 7
je 0x4d91a9
cmp esi, 4
je 0x4d91a9
cmp esi, 0xb
je 0x4d91a9
cmp esi, 1
je 0x4d91a9
cmp esi, 0x28
je 0x4d91a9
cmp esi, 3
je 0x4d9125
cmp esi, 0x1f
jne 0x4d9217
mov ecx, dword [ebp - 0x23f0]
push edi
push ecx
mov eax, dword [ecx]
call dword [eax + 0x14]
mov esi, eax
test esi, esi
jle 0x4d91a5
mov edx, dword [ebp - 0x23f0]
dec esi
push esi
push edx
mov ecx, dword [edx]
call dword [ecx + 0x18]
mov edx, dword [ebp - 0x23f0]
push eax
push edx
mov ecx, dword [edx]
call dword [ecx + 0x10]
movsx eax, al
cmp eax, 3
je 0x4d9160
cmp eax, 0x1f
jne 0x4d917a
test esi, esi
jle 0x4d917a
mov ecx, dword [ebp - 0x23f0]
push esi
push ecx
mov eax, dword [ecx]
call dword [eax + 0x24]
test eax, eax
jne 0x4d917a
dec esi
test esi, esi
jg 0x4d9164
mov edx, dword [ebp - 0x23f0]
mov eax, dword [edx]
mov ecx, dword [eax + 0x18]
lea eax, [esi + 1]
push eax
push edx
call ecx
mov edx, dword [ebp - 0x23f0]
mov edi, eax
mov eax, dword [edx]
mov ecx, dword [eax + 0x10]
lea eax, [edi - 1]
push eax
push edx
call ecx
movsx esi, al
jmp 0x4d9217
xor edi, edi
jmp 0x4d9215
cmp edi, 1
jbe 0x4d9215
mov edi, edi
mov edx, dword [ebp - 0x23f0]
mov eax, dword [edx]
mov ecx, dword [eax + 0x10]
lea eax, [edi - 1]
push eax
push edx
call ecx
movsx eax, al
cmp eax, esi
jne 0x4d9215
dec edi
cmp edi, 1
ja 0x4d91b0
jmp 0x4d9215
xor eax, eax
cmp esi, 0x2b
setge al
dec eax
and eax, 0x4a
add eax, 0xffffffdb
add eax, esi
mov dword [ebp - 0x2570], eax
cmp edi, 1
jbe 0x4d9215
mov ebx, eax
nop
mov edx, dword [ebp - 0x23f0]
mov eax, dword [edx]
mov ecx, dword [eax + 0x10]
lea eax, [edi - 1]
push eax
push edx
call ecx
movsx eax, al
cmp eax, esi
je 0x4d920d
cmp eax, ebx
jne 0x4d9213
dec edi
cmp edi, 1
ja 0x4d91f0
xor ebx, ebx
xor esi, esi
mov dword [ebp - 0x2564], 0
mov dword [ebp - 0x2574], edi
test edi, edi
je 0x4d928d
lea eax, [edi - 1]
lea edx, [ebp - 0x2574]
mov dword [ebp - 0x2574], eax
lea ecx, [ebp - 0x23f0]
call fcn.004d7bb0
mov ecx, dword [ebp - 0x23f0]
push dword [ebp - 0x2574]
push ecx
mov eax, dword [ecx]
call dword [eax + 0x10]
cmp al, 0xa
jne 0x4d9267
mov dword [ebp - 0x2564], 1
jmp 0x4d9287
mov ecx, dword [ebp - 0x23f0]
push dword [ebp - 0x2574]
push ecx
mov eax, dword [ecx]
call dword [eax + 0x10]
cmp al, 5
jne 0x4d9287
mov dword [ebp - 0x2564], 2
inc dword [ebp - 0x2574]
push 0xffffffffffffffff
lea eax, [ebp - 0x23f0]
push eax
push esi
mov esi, dword [ebp - 0x2578]
lea ecx, [ebp - 0x2560]
mov eax, esi
sub eax, edi
push eax
push edi
call fcn.00476050
mov eax, dword [ebp - 0x2544]
cmp eax, dword [ebp - 0x2558]
jae 0x4db52e
mov eax, dword [ebp - 0x2530]
add eax, 0xfffffffe
cmp eax, 0x2a
ja case.0x4d92d9.8
movzx eax, byte [eax + 0x4dbc5c]
jmp dword [eax*4 + 0x4dbc20]
mov edx, dword [ebp - 0x2544]
cmp dword [ebp - 0x2554], edx
push dword [ebp - 0x2530]
mov ecx, dword [ebp - 0x2560]
sbb eax, eax
neg eax
inc eax
sub edx, eax
push edx
call fcn.00475ef0
mov eax, dword [ebp - 0x2544]
mov dword [ebp - 0x2530], 0
mov dword [ebp - 0x2564], 1
mov dword [ebp - 0x2574], eax
mov ecx, dword [ebp - 0x2528]
jmp 0x4da8d1
mov ecx, dword [ebp - 0x2528]
test ecx, ecx
js 0x4d9354
mov eax, dword [ebp - 0x2510]
cmp ecx, dword [eax + 0x20]
jge 0x4d934d
mov eax, dword [eax + 0x28]
mov al, byte [ecx + eax]
jmp 0x4d9350
mov al, byte [eax + 0x24]
test al, al
jne 0x4d9359
cmp ecx, 0x27
jne 0x4d9373
cmp ecx, 0x2e
jne 0x4d9366
cmp dword [ebp - 0x2520], ecx
je 0x4d9373
cmp dword [ebp - 0x252c], 0x3e
jne 0x4da75a
push dword [ebp - 0x2530]
mov edx, dword [ebp - 0x2544]
cmp dword [ebp - 0x2554], edx
sbb eax, eax
neg eax
inc eax
sub edx, eax
push edx
mov ecx, dword [ebp - 0x2560]
call fcn.00475ef0
mov ecx, dword [ebp - 0x2528]
mov dword [ebp - 0x2530], 0
jmp 0x4da8d1
mov ecx, dword [ebp - 0x2528]
test ecx, ecx
jns 0x4d93bb
xor al, al
jmp 0x4d93d1
mov eax, dword [ebp - 0x2510]
cmp ecx, dword [eax + 0x20]
jge 0x4d93ce
mov eax, dword [eax + 0x28]
mov al, byte [ecx + eax]
jmp 0x4d93d1
mov al, byte [eax + 0x24]
test al, al
jne 0x4da75a
mov ecx, dword [ebp - 0x2560]
lea eax, [ebp - 0x74]
mov edx, dword [ebp - 0x2544]
push 0x64
push eax
push ecx
mov ecx, dword [ecx + 0x1f60]
dec edx
call fcn.00474ff0
add esp, 0xc
lea eax, [ebp - 0x74]
mov ecx, str.__DATA__
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4d9423
test dl, dl
je 0x4d941f
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4d9423
add eax, 2
add ecx, 2
test dl, dl
jne 0x4d9403
xor eax, eax
jmp 0x4d9428
sbb eax, eax
or eax, 1
test eax, eax
je 0x4d952b
mov ecx, 0x5bb81c
lea eax, [ebp - 0x74]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4d9458
test dl, dl
je 0x4d9454
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4d9458
add eax, 2
add ecx, 2
test dl, dl
jne 0x4d9438
xor eax, eax
jmp 0x4d945d
sbb eax, eax
or eax, 1
test eax, eax
je 0x4d952b
mov ecx, 0x5bb850
lea eax, [ebp - 0x74]
lea ecx, [ecx]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4d9490
test dl, dl
je 0x4d948c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4d9490
add eax, 2
add ecx, 2
test dl, dl
jne 0x4d9470
xor eax, eax
jmp 0x4d9495
sbb eax, eax
or eax, 1
mov ecx, dword [ebp - 0x2544]
push dword [ebp - 0x2530]
test eax, eax
jne 0x4d94ed
cmp dword [ebp - 0x2554], ecx
sbb eax, eax
neg eax
inc eax
sub ecx, eax
push ecx
mov ecx, dword [ebp - 0x2560]
call fcn.00475ef0
mov eax, dword [ebp - 0x2544]
mov dword [ebp - 0x2530], 0x29
mov dword [ebp - 0x2500], 0
mov dword [ebp - 0x2564], 2
mov dword [ebp - 0x2574], eax
jmp case.0x4d92d9.8
cmp dword [ebp - 0x2554], ecx
sbb eax, eax
neg eax
inc eax
sub ecx, eax
push ecx
mov ecx, dword [ebp - 0x2560]
call fcn.00475ef0
mov eax, dword [ebp - 0x2544]
mov dword [ebp - 0x2530], 0
mov dword [ebp - 0x2564], 2
mov dword [ebp - 0x2574], eax
jmp case.0x4d92d9.8
mov ecx, dword [ebp - 0x2528]
mov dword [ebp - 0x2530], 0x15
jmp 0x4da8d1
mov ecx, dword [ebp - 0x2528]
cmp ecx, 0x3a
jne 0x4d9563
cmp dword [ebp - 0x2520], ecx
jne 0x4d9563
lea ecx, [ebp - 0x2560]
call fcn.004761d0
jmp case.0x4d92d9.8
test ecx, ecx
js 0x4d9588
cmp ecx, dword [ebp - 0x25c4]
jge 0x4d957a
mov eax, dword [ebp - 0x25bc]
mov al, byte [eax + ecx]
jmp 0x4d9580
mov al, byte [ebp - 0x25c0]
test al, al
jne 0x4da75a
mov ecx, dword [ebp - 0x2560]
mov eax, dword [ebp - 0x2544]
sub eax, dword [ecx + 0x1f60]
cmp eax, 1
jne 0x4d95b0
lea ecx, [ebp - 0x2560]
call fcn.004761d0
mov ecx, dword [ebp - 0x2560]
mov edx, dword [ebp - 0x2544]
cmp dword [ebp - 0x2554], edx
push dword [ebp - 0x2530]
sbb eax, eax
neg eax
inc eax
sub edx, eax
push edx
call fcn.00475ef0
mov ecx, dword [ebp - 0x2528]
mov dword [ebp - 0x2530], 0
jmp 0x4da8d1
mov ecx, dword [ebp - 0x2528]
cmp ecx, 0x2e
jne 0x4d9739
mov esi, dword [ebp - 0x256c]
cmp dword [ebp - 0x2520], ecx
je 0x4d9711
cmp esi, 3
jg 0x4d9644
mov edx, dword [ebp - 0x2544]
cmp dword [ebp - 0x2554], edx
push dword [ebp - 0x2530]
mov ecx, dword [ebp - 0x2560]
sbb eax, eax
neg eax
inc eax
sub edx, eax
push edx
call fcn.00475ef0
mov ecx, dword [ebp - 0x2528]
mov dword [ebp - 0x2530], 0xa
jmp 0x4da8d1
mov eax, dword [ebp - 0x257c]
inc eax
mov dword [ebp - 0x257c], eax
cmp esi, 5
jne 0x4d9681
cmp eax, 1
jle 0x4da75a
mov eax, dword [ebp - 0x2520]
add eax, 0xffffffd0
cmp eax, 9
ja 0x4d9763
mov eax, 6
mov dword [ebp - 0x256c], eax
jmp 0x4da75a
cmp esi, 4
jne 0x4d96ff
cmp eax, 1
jg 0x4d96c5
mov edx, dword [ebp - 0x2520]
cmp edx, 0x30
jl 0x4d969f
cmp edx, 0x39
jle 0x4da75a
mov edx, dword [ebp - 0x2520]
cmp edx, 0x41
jl 0x4d96b3
cmp edx, 0x47
jl 0x4da75a
mov eax, dword [ebp - 0x2520]
add eax, 0xffffff9f
cmp eax, 5
jbe 0x4da75a
mov edx, dword [ebp - 0x2544]
cmp dword [ebp - 0x2554], edx
push dword [ebp - 0x2530]
mov ecx, dword [ebp - 0x2560]
sbb eax, eax
neg eax
inc eax
sub edx, eax
push edx
call fcn.00475ef0
mov ecx, dword [ebp - 0x2528]
mov dword [ebp - 0x2530], 0xa
jmp 0x4da8d1
mov eax, dword [ebp - 0x2520]
add eax, 0xffffffd0
cmp eax, 9
jbe 0x4da75a
cmp esi, 6
je 0x4d986b
cmp esi, 7
je 0x4d986b
cmp esi, 8
jne 0x4d9763
mov eax, 1
mov dword [ebp - 0x2530], eax
push eax
jmp 0x4d9379
cmp ecx, 0x5f
je 0x4da75a
mov esi, dword [ebp - 0x256c]
cmp esi, 5
jne 0x4d97a3
cmp ecx, 0x45
je 0x4d9774
cmp ecx, 0x65
je 0x4d9774
lea eax, [ecx - 0x30]
cmp eax, 9
jbe 0x4da75a
mov eax, 4
mov dword [ebp - 0x2530], eax
push eax
jmp 0x4d9379
mov edx, dword [ebp - 0x2520]
mov eax, 3
mov dword [ebp - 0x256c], eax
cmp edx, 0x2b
je 0x4d9793
cmp edx, 0x2d
jne 0x4da75a
lea ecx, [ebp - 0x2560]
call fcn.004761d0
jmp case.0x4d92d9.8
cmp esi, 4
jne 0x4d97d6
cmp ecx, 0x50
je 0x4d9774
cmp ecx, 0x70
je 0x4d9774
cmp ecx, 0x30
jl 0x4d97c0
cmp ecx, 0x39
jle 0x4da75a
cmp ecx, 0x41
jl 0x4d97ce
cmp ecx, 0x47
jl 0x4da75a
lea eax, [ecx - 0x61]
cmp eax, 5
jmp 0x4d975d
cmp esi, 6
je 0x4d981d
cmp esi, 7
je 0x4d981d
lea eax, [ecx - 0x30]
cmp eax, 9
ja 0x4d9711
cmp esi, 3
je 0x4da75a
cmp esi, 2
jne 0x4d97ff
cmp ecx, 0x37
jmp 0x4d9807
cmp esi, 1
jne 0x4d980d
cmp ecx, 0x31
jle 0x4da75a
mov eax, 8
mov dword [ebp - 0x256c], eax
jmp 0x4da75a
lea eax, [ecx - 0x30]
cmp eax, 9
jbe 0x4da75a
test ecx, ecx
js 0x4d9711
mov eax, dword [ebp - 0x2510]
cmp ecx, dword [eax + 0x20]
jge 0x4d9844
mov eax, dword [eax + 0x28]
mov al, byte [ecx + eax]
jmp 0x4d9847
mov al, byte [eax + 0x24]
test al, al
je 0x4d9711
cmp dword [ebp - 0x257c], 0
jne 0x4d9711
mov dword [ebp - 0x2530], 0xb
jmp 0x4da8d1
mov eax, 6
mov dword [ebp - 0x2530], eax
push eax
jmp 0x4d9379
cmp byte [ebp - 0x2534], 0
je case.0x4d92d9.8
jmp 0x4d9373
cmp dword [ebp - 0x2500], 0
jne 0x4d9a42
mov edx, dword [ebp - 0x2520]
xor esi, esi
mov edi, edx
mov dword [ebp - 0x2500], 1
mov dword [ebp - 0x24fc], edx
mov eax, edx
mov word [ebp - 0x24f8], si
mov ecx, edi
mov dword [ebp - 0x24f4], esi
mov byte [ebp - 0x24f0], 0
cmp edi, 0x7e
jne 0x4d98f6
lea ecx, [ebp - 0x2560]
call fcn.004761d0
mov edx, dword [ebp - 0x2520]
mov edi, edx
mov eax, edi
mov byte [ebp - 0x24f7], 1
mov dword [ebp - 0x24fc], edx
mov ecx, eax
cmp eax, 0x20
je 0x4d9900
cmp ecx, 9
jne 0x4d9974
mov eax, dword [ebp - 0x2544]
lea esi, [eax + 1]
cmp esi, dword [ebp - 0x2578]
jae 0x4d996d
mov edx, dword [ebp - 0x1444]
mov ecx, dword [ebp - 0x1448]
lea ecx, [ecx]
cmp edi, 0x20
je 0x4d992a
cmp edi, 9
jne 0x4d996d
inc esi
cmp esi, ecx
jl 0x4d9933
cmp esi, edx
jl 0x4d9953
push esi
lea ecx, [ebp - 0x23f0]
call fcn.004727c0
mov ecx, dword [ebp - 0x1448]
mov edx, dword [ebp - 0x1444]
cmp esi, ecx
jl 0x4d9960
cmp esi, edx
jge 0x4d9960
mov eax, esi
sub eax, ecx
mov al, byte [ebp + eax - 0x23ec]
jmp 0x4d9962
mov al, 0x20
movzx edi, al
cmp esi, dword [ebp - 0x2578]
jb 0x4d9920
sub esi, dword [ebp - 0x2544]
dec esi
cmp edi, 0x27
je 0x4d9a19
cmp edi, 0x22
je 0x4d9a19
cmp edi, 0x60
je 0x4d9a19
test esi, esi
jne 0x4d99d7
mov edx, dword [ebp - 0x2520]
test edx, edx
js 0x4d99ba
cmp edx, dword [ebp - 0x25b8]
jge 0x4d99b0
mov eax, dword [ebp - 0x25b0]
mov al, byte [eax + edx]
jmp 0x4d99b6
mov al, byte [ebp - 0x25b4]
test al, al
jne 0x4d99dd
cmp dword [ebp - 0x24fc], 0x5c
jne case.0x4d92d9.8
lea ecx, [ebp - 0x2560]
call fcn.004761d0
jmp case.0x4d92d9.8
jle case.0x4d92d9.8
push 0
lea ecx, [ebp - 0x2560]
mov dword [ebp - 0x2530], 0xa
call fcn.00476280
mov eax, dword [ebp - 0x2544]
mov dword [ebp - 0x2564], 1
mov dword [ebp - 0x2574], eax
mov dword [ebp - 0x2500], 0
jmp case.0x4d92d9.8
inc esi
test esi, esi
jle 0x4d9a30
mov edi, edi
lea ecx, [ebp - 0x2560]
call fcn.004761d0
sub esi, 1
jne 0x4d9a20
mov dword [ebp - 0x24fc], edi
mov byte [ebp - 0x24f8], 1
jmp case.0x4d92d9.8
cmp dword [ebp - 0x2500], 1
mov ecx, dword [ebp - 0x2528]
jne 0x4da75a
cmp byte [ebp - 0x24f8], 0
mov dword [ebp - 0x2564], 0
je 0x4d9b50
cmp ecx, dword [ebp - 0x24fc]
jne 0x4d9a86
push 0
lea ecx, [ebp - 0x2560]
call fcn.00476280
jmp 0x4d9bc4
cmp byte [ebp - 0x2533], 0
jne 0x4d9bca
cmp ecx, 0x5c
jne 0x4d9ab8
movzx eax, byte [ebp - 0x24fc]
cmp dword [ebp - 0x2520], eax
jne 0x4d9ab8
lea ecx, [ebp - 0x2560]
call fcn.004761d0
mov ecx, dword [ebp - 0x2528]
cmp ecx, 0xd
je 0x4d9bca
xor edi, edi
cmp dword [ebp - 0x2524], edi
jle 0x4d9bca
mov ebx, dword [ebp - 0x1444]
mov ecx, dword [ebp - 0x1448]
jmp 0x4d9ae0
mov esi, dword [ebp - 0x2544]
add esi, edi
cmp esi, ecx
jl 0x4d9af0
cmp esi, ebx
jl 0x4d9b10
push esi
lea ecx, [ebp - 0x23f0]
call fcn.004727c0
mov ecx, dword [ebp - 0x1448]
mov ebx, dword [ebp - 0x1444]
cmp esi, ecx
jl 0x4d9b1b
cmp esi, ebx
jge 0x4d9b1b
sub esi, ecx
mov dl, byte [ebp + esi - 0x23ec]
jmp 0x4d9b1d
mov dl, 0x20
mov eax, dword [ebp - 0x24f4]
inc edi
mov byte [ebp + eax - 0x24f0], dl
mov eax, dword [ebp - 0x24f4]
inc eax
mov dword [ebp - 0x24f4], eax
mov byte [ebp + eax - 0x24f0], 0
cmp edi, dword [ebp - 0x2524]
jl 0x4d9ae0
mov ebx, dword [ebp - 0x250c]
jmp 0x4d9bc4
test ecx, ecx
js 0x4d9b95
cmp ecx, dword [ebp - 0x2594]
jge 0x4d9b67
mov eax, dword [ebp - 0x258c]
mov al, byte [eax + ecx]
jmp 0x4d9b6d
mov al, byte [ebp - 0x2590]
test al, al
je 0x4d9b95
mov eax, dword [ebp - 0x24f4]
mov byte [ebp + eax - 0x24f0], cl
mov eax, dword [ebp - 0x24f4]
inc eax
mov dword [ebp - 0x24f4], eax
mov byte [ebp + eax - 0x24f0], 0
jmp 0x4d9bca
mov edx, dword [ebp - 0x2544]
cmp dword [ebp - 0x2554], edx
push dword [ebp - 0x2530]
mov ecx, dword [ebp - 0x2560]
sbb eax, eax
neg eax
inc eax
sub edx, eax
push edx
call fcn.00475ef0
ret
stc
inc edi
test eax, edx
invalid
invalid
inc dword [eax]
add byte [eax], al
invalid
mov ecx, dword [ebp - 0x2528]
cmp dword [ebp - 0x24f4], 0xff
jl 0x4da75a
mov edx, dword [ebp - 0x2544]
cmp dword [ebp - 0x2554], edx
push dword [ebp - 0x2530]
mov ecx, dword [ebp - 0x2560]
sbb eax, eax
neg eax
inc eax
sub edx, eax
push edx
call fcn.00475ef0
mov dword [ebp - 0x2530], 1
mov dword [ebp - 0x2500], 0
jmp 0x4db50b
lea ecx, [ebp - 0x2560]
call fcn.00476170
cmp byte [ebp - 0x24f7], 0
je 0x4d9c56
lea esp, [esp]
mov eax, dword [ebp - 0x2528]
cmp eax, 0x20
je 0x4d9c40
cmp eax, 9
jne 0x4d9c56
cmp byte [ebp - 0x2533], 0
jne 0x4d9c56
lea ecx, [ebp - 0x2560]
call fcn.004761d0
jmp 0x4d9c30
mov ecx, dword [ebp - 0x24f4]
test ecx, ecx
je 0x4d9c7c
lea eax, [ebp - 0x24f0]
push eax
lea ecx, [ebp - 0x2560]
call fcn.00480180
test al, al
je 0x4d9ca7
mov ecx, dword [ebp - 0x24f4]
mov eax, dword [ebp - 0x2544]
add eax, ecx
mov ecx, dword [ebp - 0x2560]
push 0
push eax
call fcn.00474ec0
movzx eax, al
cmp eax, 0xd
je 0x4d9d9e
cmp eax, 0xa
je 0x4d9d9e
cmp dword [ebp - 0x2530], 0x17
jne 0x4d9cd9
cmp byte [ebp - 0x2533], 0
jne 0x4d9325
lea ecx, [ecx]
lea ecx, [ebp - 0x2560]
call fcn.004761d0
cmp byte [ebp - 0x2533], 0
je 0x4d9cc0
jmp case.0x4d92d9.8
cmp byte [ebp - 0x2533], 0
jne case.0x4d92d9.8
xor edi, edi
lea ecx, [ebp - 0x2560]
push edi
xor esi, esi
call fcn.00480b40
test eax, eax
je 0x4d9d86
mov edi, edi
cmp eax, 0x5c
je 0x4d9d29
cmp eax, 0xd
je 0x4d9d22
cmp eax, 0xa
je 0x4d9d22
inc esi
lea ecx, [ebp - 0x2560]
push esi
call fcn.00480b40
test eax, eax
jne 0x4d9d00
jmp 0x4d9d2e
mov edi, 2
jmp 0x4d9d2e
mov edi, 1
test esi, esi
jle 0x4d9d47
mov ecx, dword [ebp - 0x2510]
lea eax, [ebp - 0x2560]
push 0
push esi
push eax
call fcn.004d8a80
cmp edi, 1
jne 0x4d9d69
lea ecx, [ebp - 0x2560]
call fcn.004761d0
mov ecx, dword [ebp - 0x2528]
cmp ecx, 0xd
je 0x4d9d8c
cmp ecx, 0xa
je 0x4d9d8c
jmp 0x4d9d7b
cmp edi, 2
jne 0x4d9d86
cmp byte [ebp - 0x2533], 0
jne case.0x4d92d9.8
lea ecx, [ebp - 0x2560]
call fcn.004761d0
mov ecx, dword [ebp - 0x2528]
cmp byte [ebp - 0x2533], 0
je 0x4d9ce6
jmp 0x4da75a
mov ecx, dword [ebp - 0x2544]
mov edi, dword [ebp - 0x24f4]
add edi, ecx
cmp edi, ecx
jbe 0x4d9dcb
mov esi, ecx
lea ecx, [ebp - 0x2560]
call fcn.004761d0
mov ecx, dword [ebp - 0x2544]
cmp ecx, esi
je 0x4d9dcb
cmp edi, ecx
ja 0x4d9db0
cmp dword [ebp - 0x2554], ecx
push dword [ebp - 0x2530]
sbb eax, eax
neg eax
inc eax
sub ecx, eax
push ecx
mov ecx, dword [ebp - 0x2560]
call fcn.00475ef0
cmp byte [ebp - 0x2533], 0
mov dword [ebp - 0x2530], 0
mov dword [ebp - 0x2564], 0
mov dword [ebp - 0x2500], 0
je 0x4d9793
mov ecx, dword [ebp - 0x2528]
jmp 0x4da9cc
mov ecx, dword [ebp - 0x23f0]
mov edx, dword [ebp - 0x2544]
mov dword [ebp - 0x2518], edx
push edx
mov eax, dword [ecx]
push ecx
call dword [eax + 0x14]
cmp byte [ebp - 0x2534], 0
mov edi, eax
je 0x4d9ee3
push 0x5bb848
lea ecx, [ebp - 0x2560]
call fcn.00480180
test al, al
je 0x4d9ee3
mov ecx, dword [ebp - 0x2544]
cmp dword [ebp - 0x2554], ecx
push dword [ebp - 0x2530]
sbb eax, eax
neg eax
inc eax
sub ecx, eax
push ecx
mov ecx, dword [ebp - 0x2560]
call fcn.00475ef0
mov dword [ebp - 0x2530], 3
mov esi, 4
lea ecx, [ebp - 0x2560]
call fcn.004761d0
sub esi, 1
jne 0x4d9e94
mov ecx, dword [ebp - 0x2544]
cmp dword [ebp - 0x2554], ecx
push dword [ebp - 0x2530]
sbb eax, eax
neg eax
inc eax
sub ecx, eax
push ecx
mov ecx, dword [ebp - 0x2560]
call fcn.00475ef0
mov eax, dword [ebp - 0x23f0]
push 3
mov dword [ebp - 0x2530], esi
push edi
mov ecx, dword [eax]
push eax
call dword [ecx + 0x28]
jmp case.0x4d92d9.8
push esi
lea edx, [ebp - 0x2518]
lea ecx, [ebp - 0x23f0]
call fcn.004d7e10
mov ecx, dword [ebp - 0x23f0]
add esp, 4
mov esi, eax
mov edx, dword [ecx]
push esi
push edi
push ecx
call dword [edx + 0x28]
test esi, esi
jne 0x4d9fdc
cmp dword [ebp - 0x2530], 0x1f
jne 0x4da052
mov edi, dword [ebp - 0x2578]
mov eax, dword [ebp - 0x2518]
dec edi
mov dword [ebp - 0x2570], eax
cmp eax, edi
jae 0x4d9fd1
mov ebx, dword [ebp - 0x2578]
mov edi, edi
test esi, esi
jne 0x4d9f92
mov dword [ebp - 0x2518], eax
lea edx, [ebp - 0x2570]
inc eax
lea ecx, [ebp - 0x23f0]
push ebx
mov dword [ebp - 0x2570], eax
call fcn.004d7e10
mov ecx, dword [ebp - 0x23f0]
add esp, 4
mov esi, eax
push dword [ebp - 0x2570]
mov eax, dword [ecx]
push ecx
call dword [eax + 0x14]
mov ecx, dword [ebp - 0x23f0]
push esi
push eax
push ecx
mov edx, dword [ecx]
call dword [edx + 0x28]
mov eax, dword [ebp - 0x2570]
cmp eax, edi
jb 0x4d9f40
mov ebx, dword [ebp - 0x250c]
cmp esi, 3
jne 0x4d9fd1
mov ecx, dword [ebp - 0x2544]
cmp dword [ebp - 0x2554], ecx
push dword [ebp - 0x2530]
sbb eax, eax
neg eax
inc eax
sub ecx, eax
push ecx
mov ecx, dword [ebp - 0x2560]
call fcn.00475ef0
mov dword [ebp - 0x2530], 3
jmp 0x4da052
mov dword [ebp - 0x2518], eax
jmp 0x4da052
cmp esi, 0x1f
jne 0x4d9ffd
mov edx, dword [ebp - 0x23f0]
mov eax, dword [edx]
mov ecx, dword [eax + 0x24]
lea eax, [edi - 1]
push eax
push edx
call ecx
cmp eax, 3
jne 0x4da027
mov esi, eax
push eax
jmp 0x4da01a
lea edx, [edi - 1]
cmp esi, 3
jne 0x4da027
mov ecx, dword [ebp - 0x23f0]
push edx
push ecx
mov eax, dword [ecx]
call dword [eax + 0x24]
cmp eax, 0x1f
jne 0x4da027
mov esi, eax
push eax
mov eax, dword [ebp - 0x23f0]
push edi
push eax
mov ecx, dword [eax]
call dword [ecx + 0x28]
mov ecx, dword [ebp - 0x2544]
cmp dword [ebp - 0x2554], ecx
push dword [ebp - 0x2530]
sbb eax, eax
neg eax
inc eax
sub ecx, eax
push ecx
mov ecx, dword [ebp - 0x2560]
call fcn.00475ef0
mov dword [ebp - 0x2530], esi
mov edi, dword [ebp - 0x2518]
cmp edi, dword [ebp - 0x2544]
jbe case.0x4d92d9.8
mov esi, dword [ebp - 0x2544]
lea ecx, [ebp - 0x2560]
call fcn.004761d0
mov edx, dword [ebp - 0x2544]
cmp edx, esi
je case.0x4d92d9.8
cmp edi, edx
ja 0x4da064
jmp case.0x4d92d9.8
cmp dword [ebp - 0x2568], 0
jg 0x4da0c8
mov ecx, dword [ebp - 0x2528]
test ecx, ecx
js 0x4d9373
cmp ecx, dword [ebp - 0x2588]
jge 0x4da0bb
mov eax, dword [ebp - 0x2580]
mov al, byte [eax + ecx]
test al, al
jmp 0x4d936d
mov al, byte [ebp - 0x2584]
test al, al
jmp 0x4d936d
cmp dword [ebp - 0x2514], 0
jne 0x4da159
mov ecx, dword [ebp - 0x2528]
cmp ecx, 0x20
je 0x4da159
cmp ecx, 9
jl 0x4da0ee
cmp ecx, 0xd
jle 0x4da159
mov edx, ecx
inc ebx
mov eax, edx
mov dword [ebp - 0x250c], ebx
mov dword [ebp - 0x2514], edx
mov dword [ebp - 0x2508], eax
cmp eax, 0x28
jne 0x4da119
mov dword [ebp - 0x2508], 0x29
jmp 0x4da75a
cmp eax, 0x5b
jne 0x4da12d
mov dword [ebp - 0x2508], 0x5d
jmp 0x4da75a
cmp eax, 0x7b
jne 0x4da141
mov dword [ebp - 0x2508], 0x7d
jmp 0x4da75a
cmp eax, 0x3c
jne 0x4da75a
mov dword [ebp - 0x2508], 0x3e
jmp 0x4da75a
xor edi, edi
lea ecx, [ebp - 0x2560]
push edi
xor esi, esi
call fcn.00480b40
test eax, eax
je case.0x4d92d9.8
cmp eax, 0x20
je 0x4da1a8
cmp eax, 9
jl 0x4da180
cmp eax, 0xd
jle 0x4da1a8
mov ecx, dword [ebp - 0x2514]
cmp eax, 0x5c
jne 0x4da18f
cmp ecx, eax
jne 0x4da1ea
cmp eax, dword [ebp - 0x2508]
jne 0x4da1cc
sub ebx, 1
mov dword [ebp - 0x250c], ebx
jne 0x4da1d7
dec dword [ebp - 0x2568]
test esi, esi
jle 0x4da205
cmp dword [ebp - 0x2514], 0x27
je 0x4da1f1
mov ecx, dword [ebp - 0x2510]
lea eax, [ebp - 0x2560]
push 1
push esi
push eax
call fcn.004d8a80
jmp 0x4da205
cmp eax, ecx
jne 0x4da1d7
inc ebx
mov dword [ebp - 0x250c], ebx
inc esi
lea ecx, [ebp - 0x2560]
push esi
call fcn.00480b40
test eax, eax
jne 0x4da171
jmp 0x4da1a8
mov edi, 1
jmp 0x4da1a8
test esi, esi
jle 0x4da205
lea ecx, [ebp - 0x2560]
call fcn.004761d0
sub esi, 1
jne 0x4da1f5
cmp edi, 1
jne case.0x4d92d9.8
lea ecx, [ebp - 0x2560]
call fcn.004761d0
jmp case.0x4d92d9.8
mov eax, dword [ebp - 0x2568]
test eax, eax
jg 0x4da252
mov ecx, dword [ebp - 0x2528]
test ecx, ecx
js 0x4d9373
cmp ecx, dword [ebp - 0x2588]
jge 0x4da0bb
mov eax, dword [ebp - 0x2580]
mov al, byte [eax + ecx]
test al, al
jmp 0x4d936d
cmp dword [ebp - 0x2514], 0
jne 0x4da278
mov ecx, dword [ebp - 0x2528]
cmp ecx, 0x20
je 0x4da278
cmp ecx, 9
jl 0x4da0ee
cmp ecx, 0xd
jg 0x4da0ee
xor edi, edi
lea ecx, [ebp - 0x2560]
cmp eax, 2
mov dword [ebp - 0x2518], edi
push edi
sete byte [ebp - 0x25c8]
call fcn.00480b40
mov esi, eax
test esi, esi
je case.0x4d92d9.8
mov ecx, dword [ebp - 0x2514]
cmp esi, 0x5c
jne 0x4da2b3
cmp ecx, esi
jne 0x4da382
mov edx, dword [ebp - 0x2568]
test ebx, ebx
jne 0x4da2c6
cmp edx, 1
je 0x4da389
mov eax, dword [ebp - 0x2508]
cmp esi, eax
jne 0x4da307
add ebx, 0xffffffff
mov dword [ebp - 0x250c], ebx
jne 0x4da2ef
dec edx
mov esi, 1
mov dword [ebp - 0x2568], edx
mov dword [ebp - 0x2518], esi
jmp 0x4da2f5
mov esi, dword [ebp - 0x2518]
cmp ecx, eax
jne 0x4da300
inc ebx
mov dword [ebp - 0x250c], ebx
cmp esi, 1
je 0x4da340
jmp 0x4da323
cmp esi, ecx
jne 0x4da314
inc ebx
mov dword [ebp - 0x250c], ebx
jmp 0x4da323
cmp esi, 0x20
je 0x4da33a
cmp esi, 9
jl 0x4da323
cmp esi, 0xd
jle 0x4da33a
inc edi
lea ecx, [ebp - 0x2560]
push edi
call fcn.00480b40
mov esi, eax
test esi, esi
jne 0x4da2a0
mov esi, dword [ebp - 0x2518]
mov eax, dword [ebp - 0x2514]
test edi, edi
jle 0x4da440
cmp dword [ebp - 0x2530], 0x12
jne 0x4da423
cmp eax, 0x27
je 0x4da423
push dword [ebp - 0x25c8]
mov ecx, dword [ebp - 0x2510]
lea eax, [ebp - 0x2560]
push edi
push eax
call fcn.004d8a80
jmp 0x4da440
mov esi, 2
jmp 0x4da340
cmp esi, 0x20
je 0x4da33a
cmp esi, 9
jl 0x4da398
cmp esi, 0xd
jle 0x4da33a
cmp esi, 0x23
jne 0x4da3bd
lea eax, [edi - 1]
push eax
lea ecx, [ebp - 0x2560]
call fcn.00480b40
cmp eax, 0x20
je 0x4da3b6
cmp eax, 9
jne 0x4da3ff
mov esi, 3
jmp 0x4da340
cmp esi, 0x28
jne 0x4da3ce
mov dword [ebp - 0x2508], 0x29
jmp 0x4da405
cmp esi, 0x5b
jne 0x4da3df
mov dword [ebp - 0x2508], 0x5d
jmp 0x4da405
cmp esi, 0x7b
jne 0x4da3f0
mov dword [ebp - 0x2508], 0x7d
jmp 0x4da405
mov dword [ebp - 0x2508], 0x3e
cmp esi, 0x3c
je 0x4da405
mov dword [ebp - 0x2508], esi
mov eax, esi
mov ebx, 1
mov esi, dword [ebp - 0x2518]
mov dword [ebp - 0x2514], eax
mov dword [ebp - 0x250c], ebx
jmp 0x4da346
test edi, edi
jle 0x4da440
jmp 0x4da430
lea ecx, [ebp - 0x2560]
call fcn.004761d0
sub edi, 1
jne 0x4da430
cmp esi, 2
je 0x4d9793
cmp esi, 3
jne case.0x4d92d9.8
mov ecx, dword [ebp - 0x2544]
cmp dword [ebp - 0x2554], ecx
push dword [ebp - 0x2530]
sbb eax, eax
neg eax
inc eax
sub ecx, eax
push ecx
jmp 0x4d938d
mov edi, dword [ebp - 0x2508]
test edi, edi
jne 0x4da4f8
mov ecx, dword [ebp - 0x2528]
cmp ecx, 0x20
je 0x4da4f8
cmp ecx, 9
jl 0x4da498
cmp ecx, 0xd
jle 0x4da4f8
mov eax, ecx
inc ebx
mov edi, eax
mov dword [ebp - 0x250c], ebx
mov dword [ebp - 0x2514], eax
mov dword [ebp - 0x2508], edi
cmp edi, 0x28
je 0x4da10a
cmp edi, 0x5b
jne 0x4da4cc
mov dword [ebp - 0x2508], 0x5d
jmp 0x4da75a
cmp edi, 0x7b
jne 0x4da4e0
mov dword [ebp - 0x2508], 0x7d
jmp 0x4da75a
cmp edi, 0x3c
jne 0x4da75a
mov dword [ebp - 0x2508], 0x3e
jmp 0x4da75a
xor esi, esi
lea ecx, [ebp - 0x2560]
push esi
mov dword [ebp - 0x2570], esi
call fcn.00480b40
test eax, eax
je case.0x4d92d9.8
cmp eax, 0x20
je 0x4da564
cmp eax, 9
jl 0x4da523
cmp eax, 0xd
jle 0x4da564
mov ecx, dword [ebp - 0x2514]
cmp eax, 0x5c
jne 0x4da532
cmp ecx, eax
jne 0x4da58e
cmp eax, edi
jne 0x4da548
sub ebx, 1
mov dword [ebp - 0x250c], ebx
jne 0x4da553
mov edi, 3
jmp 0x4da56a
cmp eax, ecx
jne 0x4da553
inc ebx
mov dword [ebp - 0x250c], ebx
inc esi
lea ecx, [ebp - 0x2560]
push esi
call fcn.00480b40
test eax, eax
jne 0x4da514
mov edi, dword [ebp - 0x2570]
test esi, esi
jle 0x4da5e0
mov eax, dword [ebp - 0x2530]
add eax, 0xfffffffa
cmp eax, 0x16
ja case.0x4da587.7
movzx eax, byte [eax + 0x4dbc94]
jmp dword [eax*4 + 0x4dbc88]
mov edi, 2
jmp 0x4da56a
mov ecx, dword [ebp - 0x2510]
lea eax, [ebp - 0x2560]
push 0
push esi
push eax
call fcn.004d8a80
jmp 0x4da5e0
cmp dword [ebp - 0x2514], 0x27
je case.0x4da587.7
mov ecx, dword [ebp - 0x2510]
lea eax, [ebp - 0x2560]
push 0
push esi
push eax
call fcn.004d8a80
jmp 0x4da5e0
test esi, esi
jle 0x4da5e0
lea ecx, [ebp - 0x2560]
call fcn.004761d0
sub esi, 1
jne 0x4da5d0
cmp edi, 2
je 0x4d9793
cmp edi, 3
jne case.0x4d92d9.8
push 0
lea ecx, [ebp - 0x2560]
call fcn.00476280
jmp case.0x4d92d9.8
xor esi, esi
jmp 0x4da610
mov eax, dword [ebp - 0x2544]
mov ecx, dword [ebp - 0x2560]
add eax, esi
push 0
push eax
call fcn.00474ec0
movzx ecx, al
cmp ecx, dword [ebp - 0x25ac]
jge 0x4da63c
mov eax, dword [ebp - 0x25a4]
mov al, byte [eax + ecx]
jmp 0x4da642
mov al, byte [ebp - 0x25a8]
test al, al
je 0x4da649
inc esi
jmp 0x4da610
mov eax, dword [ebp - 0x2544]
mov ecx, dword [ebp - 0x2560]
add eax, esi
push 0
push eax
call fcn.00474ec0
cmp al, 0x29
jne 0x4da69d
mov eax, dword [ebp - 0x2544]
lea edi, [esi + eax]
cmp edi, eax
jbe 0x4da68b
lea ecx, [ebp - 0x2560]
mov esi, eax
call fcn.004761d0
mov eax, dword [ebp - 0x2544]
cmp eax, esi
je 0x4da68b
cmp edi, eax
ja 0x4da670
push 0
lea ecx, [ebp - 0x2560]
call fcn.00476280
jmp case.0x4d92d9.8
mov ecx, dword [ebp - 0x2544]
cmp dword [ebp - 0x2554], ecx
push 0xa
sbb eax, eax
mov dword [ebp - 0x2530], 0xa
neg eax
inc eax
sub ecx, eax
push ecx
jmp 0x4d938d
lea ecx, [ebp - 0x2560]
call fcn.00476170
mov ecx, dword [ebp - 0x2528]
cmp ecx, 0x2e
jne 0x4da737
lea ecx, [ebp - 0x2560]
call fcn.004761d0
cmp byte [ebp - 0x2533], 0
jne 0x4da702
cmp dword [ebp - 0x2528], 0xd
jne 0x4da740
cmp dword [ebp - 0x2520], 0xa
jne 0x4da740
mov ecx, dword [ebp - 0x2544]
cmp dword [ebp - 0x2554], ecx
push dword [ebp - 0x2530]
sbb eax, eax
neg eax
inc eax
sub ecx, eax
push ecx
mov ecx, dword [ebp - 0x2560]
call fcn.00475ef0
mov ecx, dword [ebp - 0x2528]
mov dword [ebp - 0x2530], 0
cmp byte [ebp - 0x2533], 0
jne 0x4da75a
lea ecx, [ebp - 0x2560]
call fcn.004761d0
cmp byte [ebp - 0x2533], 0
je 0x4da740
mov ecx, dword [ebp - 0x2528]
cmp dword [ebp - 0x2530], 0x29
jne 0x4da8d1
cmp ecx, 0x20
je 0x4da775
cmp ecx, 9
jne 0x4da7db
mov dword [ebp - 0x2530], 0
nop
cmp ecx, 0x20
je 0x4da78a
cmp ecx, 9
jne 0x4da7a6
cmp byte [ebp - 0x2533], 0
jne 0x4da7a6
lea ecx, [ebp - 0x2560]
call fcn.004761d0
mov ecx, dword [ebp - 0x2528]
jmp 0x4da780
mov ecx, dword [ebp - 0x2544]
cmp dword [ebp - 0x2554], ecx
push dword [ebp - 0x2530]
sbb eax, eax
neg eax
inc eax
sub ecx, eax
push ecx
mov ecx, dword [ebp - 0x2560]
call fcn.00475ef0
mov ecx, dword [ebp - 0x2528]
mov dword [ebp - 0x2530], 0x29
test ecx, ecx
js 0x4da8bd
cmp ecx, dword [ebp - 0x25a0]
jge 0x4da7f6
mov eax, dword [ebp - 0x2598]
mov al, byte [eax + ecx]
jmp 0x4da7fc
mov al, byte [ebp - 0x259c]
test al, al
je 0x4da8bd
cmp ecx, 0x3d
je 0x4da842
lea esp, [esp]
lea ecx, [ebp - 0x2560]
call fcn.004761d0
mov ecx, dword [ebp - 0x2528]
test ecx, ecx
js 0x4da842
cmp ecx, dword [ebp - 0x2594]
jge 0x4da838
mov eax, dword [ebp - 0x258c]
mov al, byte [eax + ecx]
jmp 0x4da83e
mov al, byte [ebp - 0x2590]
test al, al
jne 0x4da810
cmp ecx, 0x20
je 0x4da84c
cmp ecx, 9
jne 0x4da868
cmp byte [ebp - 0x2533], 0
jne 0x4da868
lea ecx, [ebp - 0x2560]
call fcn.004761d0
mov ecx, dword [ebp - 0x2528]
jmp 0x4da842
cmp ecx, 0x3d
jne 0x4da88c
push 0
lea ecx, [ebp - 0x2560]
call fcn.00476280
mov ecx, dword [ebp - 0x2528]
mov dword [ebp - 0x2500], 3
jmp 0x4da8c7
mov ecx, dword [ebp - 0x2544]
cmp dword [ebp - 0x2554], ecx
push 0xb
sbb eax, eax
mov dword [ebp - 0x2530], 0xb
neg eax
inc eax
sub ecx, eax
push ecx
mov ecx, dword [ebp - 0x2560]
call fcn.00475ef0
mov ecx, dword [ebp - 0x2528]
mov dword [ebp - 0x2530], 0
mov dword [ebp - 0x2564], 0
cmp dword [ebp - 0x2500], 1
jne 0x4da96f
cmp byte [ebp - 0x2533], 0
je 0x4da9bf
cmp byte [ebp - 0x24f8], 0
mov esi, 0x18
mov dword [ebp - 0x2500], 2
je 0x4da930
cmp dword [ebp - 0x2530], 0x16
jne 0x4da916
mov dword [ebp - 0x2530], 1
mov eax, dword [ebp - 0x24fc]
cmp eax, 0x22
je 0x4da93e
cmp eax, 0x27
je 0x4da939
cmp eax, 0x60
jne 0x4da93e
lea esi, [eax - 0x47]
jmp 0x4da93e
cmp dword [ebp - 0x24fc], 0x5c
jne 0x4da93e
mov esi, 0x17
mov edx, dword [ebp - 0x2544]
cmp dword [ebp - 0x2554], edx
push dword [ebp - 0x2530]
mov ecx, dword [ebp - 0x2560]
sbb eax, eax
neg eax
inc eax
sub edx, eax
push edx
call fcn.00475ef0
mov ecx, dword [ebp - 0x2528]
mov dword [ebp - 0x2530], esi
cmp dword [ebp - 0x2500], 3
jne 0x4da9bf
cmp byte [ebp - 0x2533], 0
je 0x4da9bf
mov edx, dword [ebp - 0x2544]
cmp dword [ebp - 0x2554], edx
push dword [ebp - 0x2530]
mov ecx, dword [ebp - 0x2560]
sbb eax, eax
neg eax
mov dword [ebp - 0x2500], 0
inc eax
sub edx, eax
push edx
call fcn.00475ef0
mov dword [ebp - 0x2530], 0x2a
jmp 0x4db50b
cmp dword [ebp - 0x2530], 0
jne 0x4db50b
lea eax, [ecx - 0x30]
cmp eax, 9
jbe 0x4dbb34
mov eax, dword [ebp - 0x2520]
add eax, 0xffffffd0
cmp eax, 9
ja 0x4da9f8
cmp ecx, 0x2e
je 0x4dbb34
cmp ecx, 0x76
je 0x4dbb34
mov esi, dword [ebp - 0x2510]
lea edi, [esi + 0x20]
test ecx, ecx
js 0x4dad95
cmp ecx, dword [edi]
jge 0x4daa15
mov eax, dword [edi + 8]
mov al, byte [ecx + eax]
jmp 0x4daa18
mov al, byte [edi + 4]
test al, al
je 0x4dad95
push 5
lea ecx, [ebp - 0x2560]
call fcn.00476250
cmp dword [ebp - 0x252c], 0x3a
jne 0x4daa5b
mov eax, dword [ebp - 0x2544]
mov ecx, dword [ebp - 0x2560]
add eax, 0xfffffffe
push 0
push eax
call fcn.00474ec0
cmp al, 0x3a
jne 0x4daa5b
mov dword [ebp - 0x2530], 0xb
mov ebx, dword [ebp - 0x2544]
mov eax, dword [ebp - 0x2528]
lea esi, [ebx + 1]
cmp eax, 0x73
jne 0x4daab3
push dword [ebp - 0x2520]
mov ecx, edi
call fcn.0047c4d0
test al, al
jne 0x4daaad
mov dword [ebp - 0x2530], 0x12
xor eax, eax
mov dword [ebp - 0x2568], 2
mov dword [ebp - 0x250c], eax
mov dword [ebp - 0x2514], eax
mov dword [ebp - 0x2508], eax
jmp 0x4dac3c
mov eax, dword [ebp - 0x2528]
cmp eax, 0x6d
jne 0x4daafc
push dword [ebp - 0x2520]
mov ecx, edi
call fcn.0047c4d0
test al, al
jne 0x4daaf6
mov dword [ebp - 0x2530], 0x11
xor eax, eax
mov dword [ebp - 0x2568], 1
mov dword [ebp - 0x250c], eax
mov dword [ebp - 0x2514], eax
mov dword [ebp - 0x2508], eax
jmp 0x4dac3c
mov eax, dword [ebp - 0x2528]
cmp eax, 0x71
jne 0x4dab24
push dword [ebp - 0x2520]
mov ecx, edi
call fcn.0047c4d0
test al, al
jne 0x4dab1e
mov dword [ebp - 0x2530], 0x1a
jmp 0x4daad3
mov eax, dword [ebp - 0x2528]
cmp eax, 0x79
jne 0x4dab4f
push dword [ebp - 0x2520]
mov ecx, edi
call fcn.0047c4d0
test al, al
jne 0x4dab49
mov dword [ebp - 0x2530], 0x2c
jmp 0x4daa8a
mov eax, dword [ebp - 0x2528]
mov ecx, dword [ebp - 0x2520]
cmp eax, 0x74
jne 0x4dac8c
cmp ecx, 0x72
jne 0x4dac8c
mov eax, dword [ebp - 0x2544]
mov ecx, dword [ebp - 0x2560]
add eax, 2
push 0
push eax
call fcn.00474ec0
movzx eax, al
mov ecx, edi
push eax
call fcn.0047c4d0
test al, al
jne 0x4dac80
mov dword [ebp - 0x2530], 0x2c
mov dword [ebp - 0x2568], 2
xor eax, eax
lea ecx, [ebp - 0x2560]
mov dword [ebp - 0x250c], eax
mov dword [ebp - 0x2514], eax
mov dword [ebp - 0x2508], eax
call fcn.004761d0
inc esi
cmp dword [ebp - 0x2530], 5
jne 0x4dac33
push 0x20
push esi
lea ecx, [ebp - 0x23f0]
call fcn.00474ec0
movzx eax, al
mov ecx, edi
push eax
call fcn.0047c4d0
test al, al
je 0x4dac0e
nop
push 0x20
inc esi
lea ecx, [ebp - 0x23f0]
push esi
call fcn.00474ec0
movzx eax, al
mov ecx, edi
push eax
call fcn.0047c4d0
test al, al
jne 0x4dabf0
mov ecx, dword [ebp - 0x490]
lea eax, [ebp - 0x23f0]
push eax
mov eax, dword [ebp - 0x2510]
mov edx, esi
add eax, 0x44
push eax
call fcn.004d7980
add esp, 8
test al, al
je 0x4dac67
cmp dword [ebp - 0x2530], 0xb
je 0x4dac71
test ebx, ebx
je 0x4dac71
push dword [ebp - 0x2578]
mov edx, ebx
lea ecx, [ebp - 0x23f0]
push dword [ebp - 0x2574]
push dword [ebp - 0x2564]
push esi
call fcn.004d7a20
add esp, 0x10
test eax, eax
je 0x4dac71
mov dword [ebp - 0x2530], 0xb
mov dword [ebp - 0x2564], 0
jmp 0x4db505
mov ecx, dword [ebp - 0x2520]
mov eax, dword [ebp - 0x2528]
cmp eax, 0x71
jne 0x4dad41
push ecx
lea ecx, [ebp - 0x2604]
call fcn.0047c4d0
test al, al
je 0x4dad35
mov eax, dword [ebp - 0x2544]
mov ecx, dword [ebp - 0x2560]
add eax, 2
push 0
push eax
call fcn.00474ec0
movzx eax, al
mov ecx, edi
push eax
call fcn.0047c4d0
test al, al
jne 0x4dad35
mov ecx, dword [ebp - 0x2520]
cmp ecx, 0x71
jne 0x4dacf7
mov dword [ebp - 0x2530], 0x1b
mov dword [ebp - 0x2568], 1
jmp 0x4daba5
cmp ecx, 0x78
jne 0x4dad15
mov dword [ebp - 0x2530], 0x1c
mov dword [ebp - 0x2568], 1
jmp 0x4daba5
xor eax, eax
mov dword [ebp - 0x2568], 1
cmp ecx, 0x72
setne al
add eax, 0x1d
mov dword [ebp - 0x2530], eax
jmp 0x4daba5
mov ecx, dword [ebp - 0x2520]
mov eax, dword [ebp - 0x2528]
cmp eax, 0x78
jne 0x4dabc5
cmp ecx, 0x3d
je 0x4dad86
push ecx
mov ecx, edi
call fcn.0047c4d0
test al, al
je 0x4dad86
push dword [ebp - 0x252c]
lea ecx, [ebp - 0x25d4]
call fcn.0047c4d0
test al, al
je 0x4dabc5
mov eax, dword [ebp - 0x2520]
add eax, 0xffffffd0
cmp eax, 9
ja 0x4dabc5
mov dword [ebp - 0x2530], 0xa
jmp 0x4dac3c
cmp ecx, 0x23
jne 0x4dadac
push 2
lea ecx, [ebp - 0x2560]
call fcn.00476250
jmp 0x4db50b
cmp ecx, 0x22
jne 0x4dadb8
push 6
jmp 0x4dae1e
cmp ecx, 0x27
jne 0x4dae13
cmp dword [ebp - 0x252c], 0x26
jne 0x4dadf8
push dword [ebp - 0x2520]
lea ecx, [esi + 0x14]
call fcn.0047c4d0
test al, al
je 0x4dadf8
push 0xb
lea ecx, [ebp - 0x2560]
call fcn.00476250
mov dword [ebp - 0x2564], 0
jmp 0x4db50b
push 7
lea ecx, [ebp - 0x2560]
call fcn.00476250
mov eax, dword [ebp - 0x2528]
mov dword [ebp - 0x2514], eax
jmp 0x4dae37
cmp ecx, 0x60
jne 0x4daec6
push 0x14
lea ecx, [ebp - 0x2560]
call fcn.00476250
mov esi, dword [ebp - 0x2528]
mov eax, esi
mov dword [ebp - 0x2514], esi
mov dword [ebp - 0x2508], eax
mov ebx, 1
mov dword [ebp - 0x2568], ebx
mov dword [ebp - 0x250c], ebx
cmp eax, 0x28
jne 0x4dae6c
mov dword [ebp - 0x2508], 0x29
mov dword [ebp - 0x2564], 0
jmp 0x4db50b
cmp eax, 0x5b
jne 0x4dae8a
mov dword [ebp - 0x2508], 0x5d
mov dword [ebp - 0x2564], 0
jmp 0x4db50b
cmp eax, 0x7b
jne 0x4daea8
mov dword [ebp - 0x2508], 0x7d
mov dword [ebp - 0x2564], 0
jmp 0x4db50b
cmp eax, 0x3c
jne 0x4daeb7
mov dword [ebp - 0x2508], 0x3e
mov dword [ebp - 0x2564], 0
jmp 0x4db50b
cmp ecx, 0x24
jne 0x4daf7e
push 0xc
lea ecx, [ebp - 0x2560]
call fcn.00476250
mov eax, dword [ebp - 0x2520]
cmp eax, 0x7b
jne 0x4daf03
push 0xa
lea ecx, [ebp - 0x2560]
call fcn.00476280
mov dword [ebp - 0x2564], 0
jmp 0x4db50b
cmp eax, 0x20
je 0x4daf62
cmp eax, 9
jl 0x4daf16
cmp eax, 0xd
jle 0x4daf62
lea ecx, [ebp - 0x2560]
call fcn.004761d0
mov ecx, dword [ebp - 0x2528]
mov eax, dword [ebp - 0x2520]
cmp ecx, 0x60
jne 0x4daf37
cmp eax, 0x60
je 0x4daf48
cmp ecx, 0x3a
jne 0x4dba2b
cmp eax, ecx
jne 0x4dba2b
lea ecx, [ebp - 0x2560]
call fcn.004761d0
mov dword [ebp - 0x2564], 0
jmp 0x4db50b
push 0
lea ecx, [ebp - 0x2560]
call fcn.00476280
mov dword [ebp - 0x2564], 0
jmp 0x4db50b
cmp ecx, 0x40
jne 0x4db034
push 0xd
lea ecx, [ebp - 0x2560]
call fcn.00476250
push dword [ebp - 0x2520]
lea ecx, [ebp - 0x25ec]
call fcn.0047c4d0
test al, al
jne 0x4dba2b
mov eax, dword [ebp - 0x2520]
cmp eax, 0x3a
jne 0x4daff5
mov eax, dword [ebp - 0x2544]
mov ecx, dword [ebp - 0x2560]
add eax, 2
push 0
push eax
call fcn.00474ec0
cmp al, 0x3a
jne 0x4dafef
push 2
lea ecx, [ebp - 0x2560]
call fcn.004c4f30
mov dword [ebp - 0x2564], 0
jmp 0x4db50b
mov eax, dword [ebp - 0x2520]
cmp eax, 0x7b
je 0x4db018
cmp eax, 0x5b
je 0x4db018
mov dword [ebp - 0x2530], 0xa
mov dword [ebp - 0x2564], 0
jmp 0x4db50b
push 0xa
lea ecx, [ebp - 0x2560]
call fcn.00476280
mov dword [ebp - 0x2564], 0
jmp 0x4db50b
push ecx
lea ecx, [ebp - 0x25f8]
call fcn.0047c4d0
test al, al
je 0x4db8da
xor bl, bl
cmp dword [ebp - 0x2528], 0x3c
jne 0x4db063
cmp dword [ebp - 0x2520], 0x3c
mov byte [ebp - 0x2501], 1
je 0x4db06a
mov byte [ebp - 0x2501], 0
mov eax, dword [ebp - 0x2544]
xor bh, bh
test eax, eax
je 0x4db07f
dec eax
mov dword [ebp - 0x2518], eax
jmp 0x4db089
mov dword [ebp - 0x2518], 0
lea ecx, [ebp - 0x2560]
call fcn.00476170
lea ecx, [ebp - 0x23f0]
call fcn.004733a0
mov ecx, dword [ebp - 0x23f0]
push dword [ebp - 0x2518]
push ecx
mov eax, dword [ecx]
call dword [eax + 0x10]
test al, al
jne 0x4db0b7
mov bh, 1
lea edx, [ebp - 0x2518]
lea ecx, [ebp - 0x23f0]
call fcn.004d7bb0
mov edx, dword [ebp - 0x2518]
test edx, edx
jne 0x4db0df
mov ecx, dword [ebp - 0x2528]
mov bl, 1
jmp 0x4db170
mov ecx, dword [ebp - 0x23f0]
push edx
push ecx
mov eax, dword [ecx]
call dword [eax + 0x10]
push 0x20
push dword [ebp - 0x2518]
lea ecx, [ebp - 0x23f0]
movsx esi, al
call fcn.00474ec0
add esi, 0xfffffffd
movzx edi, al
cmp esi, 0x16
ja case.0x4db118.4
movzx eax, byte [esi + 0x4dbcc4]
jmp dword [eax*4 + 0x4dbcac]
mov bl, 1
cmp edi, 0x29
je 0x4db162
cmp edi, 0x5d
je 0x4db162
cmp edi, 0x7d
jne 0x4db1c7
mov edx, dword [ebp - 0x2518]
lea ecx, [ebp - 0x23f0]
call fcn.004d7c80
cmp eax, 0xc
je 0x4db162
cmp eax, 0xd
je 0x4db162
cmp eax, 0xe
je 0x4db162
cmp eax, 0xf
je 0x4db162
cmp eax, 0xa
jne case.0x4db118.4
mov ecx, dword [ebp - 0x2528]
xor bl, bl
mov esi, dword [ebp - 0x2510]
mov al, byte [ebp - 0x2501]
mov dword [ebp - 0x2564], 0
test al, al
je 0x4db47d
push 0x5bb840
lea ecx, [ebp - 0x2560]
call fcn.00480180
lea ecx, [ebp - 0x2560]
test al, al
je 0x4db457
push 0xa
call fcn.00476250
mov esi, 3
lea ecx, [ebp - 0x2560]
call fcn.004761d0
sub esi, 1
jne 0x4db1b2
jmp 0x4db505
cmp edi, 0x2b
je 0x4db1d5
cmp edi, 0x2d
jne case.0x4db118.4
mov eax, dword [ebp - 0x2518]
lea ecx, [ebp - 0x23f0]
push 0x20
dec eax
push eax
call fcn.00474ec0
movzx eax, al
cmp edi, eax
jne case.0x4db118.4
mov eax, dword [ebp - 0x2518]
lea ecx, [ebp - 0x23f0]
push 0x20
add eax, 0xfffffffe
push eax
call fcn.00474ec0
movzx eax, al
cmp edi, eax
mov al, byte [ebp - 0x2501]
je 0x4db446
mov ecx, dword [ebp - 0x2528]
xor bl, bl
mov esi, dword [ebp - 0x2510]
jmp 0x4db176
mov edx, dword [ebp - 0x2518]
lea ecx, [ebp - 0x23f0]
mov bl, 1
call fcn.004d7d40
cmp eax, 1
je 0x4db162
cmp eax, 2
je 0x4db162
cmp eax, 3
jne case.0x4db118.4
mov ecx, dword [ebp - 0x2528]
cmp ecx, 0x2f
jne 0x4db2a0
mov edx, dword [ebp - 0x2520]
cmp edx, 0x20
je 0x4db168
cmp edx, 9
jl 0x4db286
cmp edx, 0xd
jle 0x4db168
lea eax, [edx - 0x30]
cmp eax, 9
jbe 0x4db168
cmp edx, 0x2f
jne 0x4db16a
jmp 0x4db168
cmp ecx, 0x2a
je 0x4db2de
cmp ecx, 0x25
je 0x4db2de
cmp ecx, 0x3c
jne 0x4db16a
mov eax, dword [ebp - 0x2520]
cmp eax, 0x20
je 0x4db168
cmp eax, 9
jl 0x4db2d0
cmp eax, 0xd
jle 0x4db168
cmp eax, 0x3d
jne 0x4db16a
jmp 0x4db168
mov edx, dword [ebp - 0x2520]
cmp edx, 0x20
je 0x4db168
cmp edx, 9
jl 0x4db2fb
cmp edx, 0xd
jle 0x4db168
lea eax, [edx - 0x30]
cmp eax, 9
jbe 0x4db168
cmp ecx, 0x2a
jne 0x4db16a
cmp edx, ecx
je 0x4db168
mov al, byte [ebp - 0x2501]
mov esi, dword [ebp - 0x2510]
jmp 0x4db176
mov al, byte [ebp - 0x2501]
test al, al
je 0x4db446
test bh, bh
je 0x4db446
mov ecx, dword [ebp - 0x2528]
mov bl, 1
mov esi, dword [ebp - 0x2510]
jmp 0x4db176
mov ecx, dword [ebp - 0x2528]
mov bl, 1
cmp ecx, 0x2f
jne 0x4db3e6
mov ecx, dword [ebp - 0x2518]
lea esi, [ecx + 1]
test ecx, ecx
je 0x4db395
lea edx, [ecx - 1]
mov ecx, dword [ebp - 0x23f0]
push edx
push ecx
mov eax, dword [ecx]
call dword [eax + 0x10]
mov ecx, dword [ebp - 0x2518]
cmp al, 5
jne 0x4db395
sub ecx, 1
mov dword [ebp - 0x2518], ecx
jne 0x4db370
lea eax, [ebp - 0x23f0]
mov edx, esi
push eax
lea eax, [ebp - 0x484]
push eax
call fcn.004d7980
add esp, 8
test al, al
jne case.0x4db118.4
mov ecx, dword [ebp - 0x2520]
cmp ecx, 0x20
je 0x4db162
cmp ecx, 9
jl 0x4db3d2
cmp ecx, 0xd
jle 0x4db162
lea eax, [ecx - 0x30]
cmp eax, 9
jbe 0x4db162
cmp ecx, 0x2f
jmp 0x4db15c
cmp ecx, 0x2a
je 0x4db3f4
cmp ecx, 0x25
jne 0x4db2aa
mov edx, dword [ebp - 0x2520]
cmp edx, 0x20
je 0x4db168
cmp edx, 9
jl 0x4db411
cmp edx, 0xd
jle 0x4db168
lea eax, [edx - 0x30]
cmp eax, 9
jbe 0x4db168
cmp ecx, 0x2a
jne 0x4db16a
cmp edx, ecx
jne 0x4db16a
jmp 0x4db168
mov ecx, dword [ebp - 0x2528]
mov bl, 1
jmp 0x4db16a
mov al, byte [ebp - 0x2501]
mov ecx, dword [ebp - 0x2528]
mov esi, dword [ebp - 0x2510]
jmp 0x4db176
test bl, bl
je 0x4db471
push 0x16
call fcn.00476250
mov dword [ebp - 0x2500], 0
jmp 0x4db505
push 0xa
call fcn.00476250
jmp 0x4db4fa
cmp ecx, 0x2a
jne 0x4db735
lea ecx, [ebp - 0x2560]
test bl, bl
je 0x4db4ea
push 0xf
call fcn.00476250
mov eax, dword [ebp - 0x2520]
cmp eax, 0x3a
jne 0x4db4d6
mov eax, dword [ebp - 0x2544]
mov ecx, dword [ebp - 0x2560]
add eax, 2
push 0
push eax
call fcn.00474ec0
cmp al, 0x3a
jne 0x4db4d0
push 2
lea ecx, [ebp - 0x2560]
call fcn.004c4f30
jmp 0x4db505
mov eax, dword [ebp - 0x2520]
lea ecx, [ebp - 0x2560]
cmp eax, 0x7b
jne 0x4db500
push 0xa
call fcn.00476280
jmp 0x4db505
push 0xa
call fcn.00476250
cmp dword [ebp - 0x2520], 0x2a
jne 0x4db505
lea ecx, [ebp - 0x2560]
call fcn.004761d0
mov ebx, dword [ebp - 0x250c]
lea ecx, [ebp - 0x2560]
call fcn.004761d0
mov eax, dword [ebp - 0x2544]
mov esi, dword [ebp - 0x2578]
cmp eax, dword [ebp - 0x2558]
jb 0x4d92c0
lea ecx, [ebp - 0x2560]
call fcn.00476170
mov eax, dword [ebp - 0x2530]
cmp eax, 0x17
je 0x4db553
cmp eax, 0x18
je 0x4db553
cmp eax, 0x19
je 0x4db553
cmp eax, 0x2a
jne 0x4db56b
mov eax, dword [ebp - 0x23f0]
push dword [ebp - 0x1438]
push dword [ebp - 0x2544]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x40]
lea ecx, [ebp - 0x2560]
call fcn.00476170
push dword [ebp - 0x2598]
call fcn.0059e230
push dword [ebp - 0x25cc]
mov dword [ebp - 0x2598], 0
mov dword [ebp - 0x25a0], 0
call fcn.0059e230
push dword [ebp - 0x25a4]
mov dword [ebp - 0x25cc], 0
mov dword [ebp - 0x25d4], 0
call fcn.0059e230
push dword [ebp - 0x258c]
mov dword [ebp - 0x25a4], 0
mov dword [ebp - 0x25ac], 0
call fcn.0059e230
push dword [ebp - 0x25b0]
mov dword [ebp - 0x258c], 0
mov dword [ebp - 0x2594], 0
call fcn.0059e230
push dword [ebp - 0x25d8]
mov dword [ebp - 0x25b0], 0
mov dword [ebp - 0x25b8], 0
call fcn.0059e230
push dword [ebp - 0x25e4]
mov dword [ebp - 0x25d8], 0
mov dword [ebp - 0x25e0], 0
call fcn.0059e230
push dword [ebp - 0x25bc]
mov dword [ebp - 0x25e4], 0
mov dword [ebp - 0x25ec], 0
call fcn.0059e230
push dword [ebp - 0x25f0]
mov dword [ebp - 0x25bc], 0
mov dword [ebp - 0x25c4], 0
call fcn.0059e230
push dword [ebp - 0x2580]
mov dword [ebp - 0x25f0], 0
mov dword [ebp - 0x25f8], 0
call fcn.0059e230
push dword [ebp - 0x25fc]
mov dword [ebp - 0x2580], 0
mov dword [ebp - 0x2588], 0
call fcn.0059e230
push dword [ebp - 0x2608]
mov dword [ebp - 0x25fc], 0
mov dword [ebp - 0x2604], 0
call fcn.0059e230
push dword [ebp - 0x2614]
mov dword [ebp - 0x2608], 0
mov dword [ebp - 0x2610], 0
call fcn.0059e230
add esp, 0x34
mov dword [ebp - 0x2614], 0
lea ecx, [ebp - 0x484]
mov dword [ebp - 0x261c], 0
call fcn.00475190
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0059df64
mov esp, ebp
pop ebp
ret 0x14
cmp ecx, 0x25
jne 0x4db7dc
lea ecx, [ebp - 0x2560]
test bl, bl
je 0x4db7d0
push 0xe
call fcn.00476250
push dword [ebp - 0x2520]
lea ecx, [ebp - 0x25e0]
call fcn.0047c4d0
test al, al
jne 0x4db4fa
mov eax, dword [ebp - 0x2520]
cmp eax, 0x3a
jne 0x4db7aa
mov eax, dword [ebp - 0x2544]
mov ecx, dword [ebp - 0x2560]
add eax, 2
push 0
push eax
call fcn.00474ec0
cmp al, 0x3a
jne 0x4db7a4
push 2
lea ecx, [ebp - 0x2560]
call fcn.004c4f30
jmp 0x4db505
mov eax, dword [ebp - 0x2520]
cmp eax, 0x7b
jne 0x4db7c1
push 0xa
lea ecx, [ebp - 0x2560]
call fcn.00476280
jmp 0x4db505
mov dword [ebp - 0x2530], 0xa
jmp 0x4db505
push 0xa
call fcn.00476250
jmp 0x4db505
cmp ecx, 0x3c
jne 0x4db837
test bl, bl
je 0x4db825
lea eax, [ebp - 0x2560]
mov ecx, esi
push eax
call fcn.004d8a20
mov esi, eax
lea ecx, [ebp - 0x2560]
test esi, esi
jle 0x4db7d0
push 0xb
call fcn.00476250
lea ebx, [ebx]
lea ecx, [ebp - 0x2560]
call fcn.004761d0
sub esi, 1
jne 0x4db810
jmp 0x4db505
push 0xa
lea ecx, [ebp - 0x2560]
call fcn.00476250
jmp 0x4db505
lea ecx, [ebp - 0x2560]
test bl, bl
je 0x4db8c7
push 0x11
call fcn.00476250
mov eax, dword [ebp - 0x2528]
mov ebx, 1
mov dword [ebp - 0x2568], 1
mov dword [ebp - 0x250c], ebx
mov dword [ebp - 0x2514], eax
mov dword [ebp - 0x2508], eax
cmp eax, 0x28
jne 0x4db887
mov dword [ebp - 0x2508], 0x29
jmp 0x4db50b
cmp eax, 0x5b
jne 0x4db89b
mov dword [ebp - 0x2508], 0x5d
jmp 0x4db50b
cmp eax, 0x7b
jne 0x4db8af
mov dword [ebp - 0x2508], 0x7d
jmp 0x4db50b
cmp eax, 0x3c
jne 0x4db50b
mov dword [ebp - 0x2508], 0x3e
jmp 0x4db50b
push 0xa
call fcn.00476250
cmp dword [ebp - 0x2520], 0x2f
jmp 0x4db4f8
mov eax, dword [ebp - 0x2528]
cmp eax, 0x3d
jne 0x4db925
push dword [ebp - 0x2520]
lea ecx, [ebp - 0x2588]
call fcn.0047c4d0
test al, al
je 0x4db91f
cmp byte [ebp - 0x2534], 0
je 0x4db91f
push 3
lea ecx, [ebp - 0x2560]
call fcn.00476250
mov dword [ebp - 0x2564], 0
jmp 0x4db50b
mov eax, dword [ebp - 0x2528]
cmp eax, 0x2d
jne 0x4dba40
push dword [ebp - 0x2520]
lea ecx, [esi + 0x14]
call fcn.0047c4d0
test al, al
je 0x4dba3a
mov eax, dword [ebp - 0x2544]
lea ecx, [ebp - 0x261c]
push dword [ebp - 0x2520]
mov dword [ebp - 0x2570], eax
mov esi, 2
call fcn.0047c4d0
test al, al
je 0x4db996
mov eax, dword [ebp - 0x2544]
mov ecx, dword [ebp - 0x2560]
add eax, esi
push 0
push eax
call fcn.00474ec0
movzx eax, al
mov ecx, edi
push eax
call fcn.0047c4d0
test al, al
jne 0x4db996
push 5
jmp 0x4db9e8
mov eax, dword [ebp - 0x2544]
mov ecx, dword [ebp - 0x2560]
add eax, 2
push 0
push eax
call fcn.00474ec0
movzx eax, al
mov ecx, edi
push eax
call fcn.0047c4d0
test al, al
je 0x4db9e6
lea esp, [esp]
mov eax, dword [ebp - 0x2544]
inc esi
mov ecx, dword [ebp - 0x2560]
add eax, esi
push 0
push eax
call fcn.00474ec0
movzx eax, al
mov ecx, edi
push eax
call fcn.0047c4d0
test al, al
jne 0x4db9c0
push 0xa
lea ecx, [ebp - 0x2560]
call fcn.00476250
push dword [ebp - 0x2578]
mov edx, dword [ebp - 0x2570]
lea ecx, [ebp - 0x23f0]
push dword [ebp - 0x2574]
push dword [ebp - 0x2564]
lea eax, [esi + edx]
push eax
call fcn.004d7a20
add esp, 0x10
test al, 2
je 0x4dba2b
mov dword [ebp - 0x2530], 0xb
mov dword [ebp - 0x2564], 0
jmp 0x4db50b
mov eax, dword [ebp - 0x2528]
cmp eax, 0x28
jne 0x4dba9f
cmp dword [ebp - 0x2544], 0
jbe 0x4dba9f
lea ecx, [ebp - 0x2560]
call fcn.00476170
mov edx, dword [ebp - 0x2544]
lea ecx, [ebp - 0x23f0]
dec edx
call fcn.004d7f10
lea ecx, [ebp - 0x2560]
test al, al
je 0x4dba93
push 0x28
call fcn.00476250
mov dword [ebp - 0x2564], 0
jmp 0x4db50b
push 0xa
call fcn.00476250
jmp 0x4db50b
push eax
lea ecx, [ebp - 0x2610]
call fcn.0047c4d0
test al, al
je 0x4dbb02
push 0xa
lea ecx, [ebp - 0x2560]
call fcn.00476250
cmp dword [ebp - 0x2528], 0x2e
jne 0x4db50b
cmp dword [ebp - 0x2520], 0x2e
jne 0x4db50b
lea ecx, [ebp - 0x2560]
call fcn.004761d0
cmp dword [ebp - 0x2520], 0x2e
jne 0x4db50b
lea ecx, [ebp - 0x2560]
call fcn.004761d0
jmp 0x4db50b
mov eax, dword [ebp - 0x2528]
cmp eax, 4
je 0x4dbb22
cmp eax, 0x1a
je 0x4dbb22
lea ecx, [ebp - 0x2560]
call fcn.00476170
jmp 0x4db50b
push 0x15
lea ecx, [ebp - 0x2560]
call fcn.00476250
jmp 0x4db50b
mov edx, dword [ebp - 0x2544]
cmp dword [ebp - 0x2554], edx
mov ecx, dword [ebp - 0x2560]
sbb eax, eax
neg eax
inc eax
push 0
sub edx, eax
push edx
call fcn.00475ef0
mov eax, dword [ebp - 0x2528]
mov dword [ebp - 0x2530], 4
mov dword [ebp - 0x2564], 0
mov dword [ebp - 0x256c], 5
mov dword [ebp - 0x257c], 0
cmp eax, 0x30
jne 0x4dbc08
mov eax, dword [ebp - 0x2520]
cmp eax, 0x78
je 0x4dbbee
cmp eax, 0x58
je 0x4dbbee
cmp eax, 0x62
je 0x4dbbd4
cmp eax, 0x42
je 0x4dbbd4
add eax, 0xffffffd0
cmp eax, 9
ja 0x4db50b
lea ecx, [ebp - 0x2560]
mov dword [ebp - 0x256c], 2
call fcn.004761d0
jmp 0x4db50b
lea ecx, [ebp - 0x2560]
mov dword [ebp - 0x256c], 1
call fcn.004761d0
jmp 0x4db50b
lea ecx, [ebp - 0x2560]
mov dword [ebp - 0x256c], 4
call fcn.004761d0
jmp 0x4db50b
cmp eax, 0x76
jne 0x4db50b
mov dword [ebp - 0x256c], 7
jmp 0x4db50b