Function at 0x42d06c
Capabilities:
Parse credit card information

Disassembly:
push ebp
lea ebp, [esp - 0x68]
sub esp, 0xb8
push ebx
push esi
xor ebx, ebx
cmp dword [ebp + 0x74], ebx
mov esi, ecx
push edi
mov dword [ebp + 0x60], esi
jne 0x42d08c
mov eax, dword [esi + 0x28]
mov dword [ebp + 0x74], eax
call fcn.0043a27a
lea ecx, [ebp + 0x70]
call fcn.0040e2c3
test byte [esi + 0xc], 1
je 0x42d0ab
cmp dword [0x4c0eb0], ebx
mov byte [ebp + 0x4f], 1
jne 0x42d0af
mov byte [ebp + 0x4f], 0
mov edi, dword [ebp + 0x70]
cmp word [edi], 0x40
jne 0x42d0c1
inc edi
inc edi
mov dword [ebp + 0x70], edi
mov byte [ebp + 0x4f], 0
mov dword [ebp + 0x64], 0x80004001
cmp word [edi], bx
je 0x42dfeb
and dword [ebp + 0x34], 0
and dword [ebp + 0x50], 0
xor bl, bl
cmp word [edi], 0x2d
mov byte [ebp + 0x5f], 0
je 0x42d2d4
cmp byte [ebp + 0x4f], 0
je 0x42d147
test byte [esi + 0xc], 2
je 0x42d102
push edi
lea ecx, [ebp + 0x34]
call fcn.004464ff
mov eax, dword [eax]
jmp 0x42d115
push 1
push 0
lea eax, [ebp + 0x34]
push eax
push edi
mov ecx, esi
call fcn.0044c8eb
mov eax, dword [ebp + 0x34]
test bl, bl
mov dword [ebp + 0x50], eax
jne 0x42d13d
test byte [esi + 0xc], 0x14
je 0x42d13d
push dword [ebp + 0x7c]
mov ecx, esi
push 0x11
push 0
push eax
call fcn.0041b06a
test byte [esi + 0xc], 0x10
jne 0x42d147
and dword [ebp + 0x50], 0
jmp 0x42d147
test byte [esi + 0xc], 8
jne 0x42d147
mov byte [ebp + 0x5f], 2
xor edi, edi
test bl, bl
mov dword [ebp + 0x44], edi
jne 0x42d2ef
lea ecx, [ebp + 0x70]
mov byte [ebp + 0x3f], 0xa
call fcn.0040e2c3
lea ecx, [ebp + 0x40]
call fcn.0043dd7e
mov edi, dword [ebp + 0x70]
mov dword [ebp + 0x38], 0x7d
xor eax, eax
jmp 0x42d179
inc edi
inc edi
inc eax
cmp word [edi], 0x5e
je 0x42d176
dec eax
test ax, ax
jl 0x42d1b5
inc eax
movsx esi, ax
mov ecx, dword [ebp + 0x60]
and dword [ebp + 0x70], 0
push 1
push 0
lea eax, [ebp + 0x70]
push eax
push edi
call fcn.0044c8eb
mov eax, dword [ebp + 0x44]
mov edi, dword [ebp + 0x70]
lea ecx, [ebp + 0x70]
mov dword [ebp + 0x44], edi
mov dword [ebp + 0x70], eax
call fcn.00437e1a
dec esi
jne 0x42d189
lea eax, [ebp + 0x58]
push eax
xor esi, esi
mov dword [ebp + 0x58], edi
call fcn.00405172
mov eax, dword [ebp + 0x58]
sub eax, edi
sar eax, 1
dec eax
pop ecx
mov ecx, edi
js 0x42d32d
inc eax
cmp word [ecx], 0x25
jne 0x42d1dc
inc esi
inc ecx
inc ecx
dec eax
jne 0x42d1d5
cmp si, 2
jl 0x42d32d
lea eax, [ebp + 0x58]
push eax
mov dword [ebp + 0x58], edi
call fcn.00405172
mov esi, dword [ebp + 0x58]
pop ecx
push esi
lea ecx, [ebp + 0x54]
call fcn.00446497
push esi
call dword [sym.imp.KERNEL32.DLL_lstrlenW]
mov ecx, dword [ebp + 0x60]
mov ebx, eax
xor eax, eax
push 1
mov dword [ebp + 0x48], eax
push eax
mov word [esi], ax
lea eax, [ebp + 0x48]
push eax
push edi
call fcn.0044c8eb
mov eax, dword [ebp + 0x48]
mov dword [ebp + 0x70], eax
movzx eax, word [eax]
jmp 0x42d244
cmp ax, 0x40
jne 0x42d24b
add dword [ebp + 0x70], 2
mov eax, dword [ebp + 0x70]
mov ax, word [eax]
mov byte [ebp + 0x4f], 0
test ax, ax
jne 0x42d230
jmp 0x42d251
cmp word [edi], 0x2d
je 0x42d2b1
push dword [ebp + 0x70]
call dword [sym.imp.KERNEL32.DLL_lstrlenW]
mov esi, eax
lea eax, [esi + ebx + 3]
push eax
lea ecx, [ebp + 0x44]
call fcn.0043ddc3
mov edi, dword [ebp + 0x44]
push esi
push dword [ebp + 0x70]
push edi
call fcn.0040515a
mov eax, dword [ebp + 0x44]
inc ebx
push ebx
push dword [ebp + 0x54]
lea eax, [eax + esi*2]
push eax
call fcn.0040515a
mov eax, dword [ebp + 0x44]
add esp, 0x18
cmp word [eax], 0x5e
lea ecx, [ebp + 0x48]
jne 0x42d320
dec byte [ebp + 0x3f]
js 0x42d30c
call fcn.00437e1a
lea ecx, [ebp + 0x54]
call fcn.00437e1a
jmp 0x42d172
lea ecx, [ebp + 0x48]
call fcn.00437e1a
lea ecx, [ebp + 0x54]
call fcn.00437e1a
lea ecx, [ebp + 0x40]
call fcn.00437e1a
lea ecx, [ebp + 0x44]
call fcn.00437e1a
mov esi, dword [ebp + 0x60]
mov bl, byte [edi]
inc edi
inc edi
cmp word [edi], 0x20
mov dword [ebp + 0x70], edi
jne 0x42d0e9
inc edi
inc edi
mov dword [ebp + 0x70], edi
jmp 0x42d0e9
cmp dword [ebp + 0x50], edi
je 0x42d304
push dword [ebp + 0x7c]
mov ecx, esi
push 0x21
push edi
push dword [ebp + 0x50]
call fcn.0041b06a
mov dword [ebp + 0x64], edi
jmp 0x42eab6
mov dword [ebp + 0x64], 0x80070057
call fcn.00437e1a
lea ecx, [ebp + 0x54]
jmp 0x42e6d9
call fcn.00437e1a
lea ecx, [ebp + 0x54]
call fcn.00437e1a
mov ax, word [edi]
cmp ax, 0x28
jne 0x42d340
push 0x29
pop esi
mov word [edi], 0x7b
jmp 0x42d349
cmp ax, 0x7b
jne 0x42d382
mov esi, dword [ebp + 0x38]
push edi
call dword [sym.imp.KERNEL32.DLL_lstrlenW]
lea eax, [edi + eax*2 - 2]
cmp si, word [eax]
jne 0x42d35d
and word [eax], 0
mov eax, dword [ebp + 0x44]
mov ecx, dword [ebp + 0x60]
and dword [ebp + 0x44], 0
push 1
mov dword [ebp + 0x70], eax
push 0
lea eax, [ebp + 0x44]
push eax
push edi
call fcn.0044bafc
lea ecx, [ebp + 0x70]
call fcn.00437e1a
jmp 0x42d390
cmp dword [ebp + 0x44], edi
je 0x42d390
push edi
lea ecx, [ebp + 0x44]
call fcn.0044655b
mov eax, dword [ebp + 0x44]
lea ecx, [ebp + 0x70]
mov dword [ebp + 0x70], eax
call fcn.0040e2c3
mov esi, dword [ebp + 0x70]
mov ax, word [esi]
cmp ax, 0x23
je 0x42dfd3
test ax, ax
je 0x42dfd3
cmp ax, 0x7b
je 0x42ead6
cmp ax, 0x5b
jne 0x42d3d2
cmp word [esi + 2], 0x5d
je 0x42ead6
cmp ax, 0x46
mov edi, esi
mov dword [ebp + 0x58], edi
mov ebx, esi
jne 0x42d3fb
cmp word [esi + 2], 0x49
jne 0x42d3fb
cmp word [esi + 4], 0x4e
jne 0x42d3fb
cmp word [esi + 6], 0x44
jne 0x42d3fb
cmp word [esi + 8], 0x20
je 0x42d40f
mov ecx, dword [ebp + 0x60]
push 1
push 0
lea eax, [ebp + 0x40]
push eax
push esi
call fcn.0044c8eb
mov ebx, dword [ebp + 0x40]
mov ax, word [esi]
and dword [ebp + 0x54], 0
push 0x22
pop ecx
cmp ax, cx
push 0x7c
mov dword [ebp + 0x48], ecx
pop edx
je 0x42d42c
cmp ax, dx
mov dword [ebp + 0x48], edx
jne 0x42d485
push esi
call dword [sym.imp.KERNEL32.DLL_lstrlenW]
mov cx, word [ebp + 0x48]
cmp word [esi], cx
lea eax, [esi + eax*2 - 2]
jne 0x42d457
mov ecx, dword [ebp + 0x48]
cmp word [eax], cx
jne 0x42d457
inc edi
inc edi
dec eax
dec eax
inc dword [ebp + 0x54]
cmp word [edi], cx
mov dword [ebp + 0x58], edi
je 0x42d443
and word [eax + 2], 0
cmp dword [ebp + 0x54], 0
jle 0x42d471
push ebx
call dword [sym.imp.KERNEL32.DLL_lstrlenW]
sub eax, dword [ebp + 0x54]
and word [ebx + eax*2], 0
lea ecx, [ebp + 0x58]
call fcn.0040e2c3
mov edi, dword [ebp + 0x58]
mov eax, edi
sub eax, esi
sar eax, 1
lea ebx, [ebx + eax*2]
lea esi, [ebp + 0x54]
mov dword [ebp + 0x54], edi
call fcn.00411653
mov eax, dword [ebp + 0x54]
sub eax, edi
sar eax, 1
mov dword [ebp + 0x48], eax
mov dword [ebp + 0x54], ebx
call fcn.00411653
mov esi, dword [ebp + 0x54]
mov eax, esi
sub eax, ebx
sar eax, 1
push edi
mov dword [ebp + 0x38], eax
call dword [sym.imp.KERNEL32.DLL_lstrlenW]
lea ecx, [ebp + 0x58]
mov dword [ebp + 0x58], esi
call fcn.0040e2c3
mov esi, dword [ebp + 0x48]
xor eax, eax
cmp esi, 3
mov dword [ebp + 0x2c], eax
jl 0x42d590
cmp esi, 0x7f
jg 0x42d590
xor ecx, ecx
mov cx, word [edi]
push ecx
call fcn.00412aa7
add esp, 4
test al, al
mov al, cl
je 0x42d4f2
and al, 0xdf
jmp 0x42d4f9
cmp cx, 0xff
ja 0x42d4fe
lea ecx, [ebp + 0x2d]
jmp 0x42d508
mov esi, dword [ebp + 0x48]
mov byte [ebp + 0x2d], ch
lea ecx, [ebp + 0x2e]
inc esi
xor edx, edx
mov dx, word [edi + 2]
mov byte [ebp + 0x2c], al
push edx
call fcn.00412aa7
add esp, 4
test al, al
mov al, dl
je 0x42d527
and al, 0xdf
mov byte [ecx], al
inc ecx
jmp 0x42d535
mov byte [ecx], al
inc ecx
cmp dx, 0xff
jbe 0x42d535
mov byte [ecx], dh
inc ecx
inc esi
xor edx, edx
mov dx, word [edi + 4]
push edx
call fcn.00412aa7
add esp, 4
test al, al
mov al, dl
je 0x42d551
and al, 0xdf
mov byte [ecx], al
inc ecx
jmp 0x42d55f
mov byte [ecx], al
inc ecx
cmp dx, 0xff
jbe 0x42d55f
mov byte [ecx], dh
inc ecx
inc esi
cmp dword [ebp + 0x48], 4
jl 0x42d58d
xor edx, edx
mov dx, word [edi + 6]
push edx
call fcn.00412aa7
add esp, 4
test al, al
mov al, dl
je 0x42d580
and al, 0xdf
mov byte [ecx], al
jmp 0x42d58d
cmp dx, 0xff
mov byte [ecx], al
jbe 0x42d58d
mov byte [ecx + 1], dh
inc esi
mov eax, dword [ebp + 0x2c]
mov edx, dword [ebp + 0x48]
shl esi, 8
or esi, edx
cmp esi, 0x303
jne 0x42d5fc
cmp eax, 0x444553
je 0x42d5e6
cmp eax, 0x524944
je 0x42d5d3
cmp eax, 0x544553
jne 0x42d939
push dword [ebp + 0x74]
add edi, 6
push edi
push 1
add ebx, 6
mov ecx, dword [ebp + 0x60]
push ebx
call fcn.00420fa6
jmp 0x42dfa6
mov ecx, dword [ebp + 0x60]
push 0
add edi, 6
push edi
call fcn.0046e731
jmp 0x42dfa6
mov ecx, dword [ebp + 0x60]
push 0
push dword [ebp + 0x74]
add edi, 6
push edi
call fcn.0045433a
jmp 0x42dfa6
cmp esi, 0x606
jne 0x42d653
cmp eax, 0x45524854
jne 0x42d939
push 6
push edi
push str.THREAD
call fcn.0043917b
add esp, 0xc
test al, al
je 0x42d939
cmp byte [ebp + 0x5f], 0
je 0x42d63f
push dword [ebp + 0x7c]
mov ecx, dword [ebp + 0x60]
push 0x11
push 0
push dword [ebp + 0x50]
call fcn.0041b06a
add edi, 0xc
push dword [ebp + 0x7c]
mov ecx, dword [ebp + 0x60]
push edi
call fcn.0047835a
jmp 0x42dfa6
cmp esi, 0x404
jne 0x42d939
mov ecx, 0x4d455449
cmp eax, ecx
ja 0x42deaa
je 0x42de89
mov ecx, 0x46544547
cmp eax, ecx
ja 0x42dafc
je 0x42dae8
mov ecx, 0x45444948
cmp eax, ecx
ja 0x42d8e8
je 0x42d8d1
mov ecx, 0x44494c53
cmp eax, ecx
ja 0x42d7ec
je 0x42d7d5
cmp eax, 0x43454a45
je 0x42d7c4
cmp eax, 0x43455845
je 0x42d7ab
cmp eax, 0x434c4143
je 0x42d798
cmp eax, 0x4350544e
je 0x42d787
cmp eax, 0x44414552
je 0x42d74a
cmp eax, 0x44414f4c
je 0x42d707
cmp eax, 0x44415049
jne 0x42d939
push dword [ebp + 0x7c]
mov ecx, dword [ebp + 0x60]
push dword [ebp + 0x74]
add edi, 8
push edi
call fcn.0045171f
jmp 0x42dfa6
cmp byte [ebp + 0x5f], 0
je 0x42d71f
push dword [ebp + 0x7c]
mov ecx, dword [ebp + 0x60]
push 0x11
push 0
push dword [ebp + 0x50]
call fcn.0041b06a
add edi, 8
lea ecx, [ebp + 0x74]
mov dword [ebp + 0x74], edi
call fcn.0040e2c3
push dword [ebp + 0x74]
mov ecx, dword [ebp + 0x60]
call fcn.0042f370
mov ecx, dword [ebp + 0x60]
push 1
mov dword [ebp + 0x64], eax
call fcn.004628c6
jmp 0x42ea46
push 4
push ebx
push str.READ
call fcn.0043917b
add esp, 0xc
test al, al
je 0x42d95e
cmp dword [ebp + 0x38], 4
je 0x42d773
cmp word [ebx + 8], 0x2d
jne 0x42d95e
push dword [ebp + 0x74]
mov ecx, dword [ebp + 0x60]
add edi, 8
push edi
call fcn.00463ca7
jmp 0x42dfa6
mov ecx, dword [ebp + 0x60]
add ebx, 8
push ebx
call fcn.00448758
jmp 0x42dfa6
mov ecx, dword [ebp + 0x60]
push 0
add edi, 8
push edi
call fcn.0047ec1e
jmp 0x42dfa6
mov ecx, dword [ebp + 0x60]
xor eax, eax
push eax
push eax
push eax
push eax
add edi, 8
push edi
push ecx
push eax
call fcn.00409677
jmp 0x42dfa6
mov ecx, dword [ebp + 0x60]
add ebx, 8
push ebx
call fcn.0044cd61
jmp 0x42dfa6
push dword [ebp + 0x7c]
mov ecx, dword [ebp + 0x60]
push dword [ebp + 0x74]
add edi, 8
push edi
call fcn.0047cccb
jmp 0x42dfa6
cmp eax, 0x444d4152
je 0x42d8c1
cmp eax, 0x444e4152
je 0x42d8ad
cmp eax, 0x444e4553
je 0x42d8a0
cmp eax, 0x444e4946
je 0x42d867
cmp eax, 0x44524854
je 0x42d847
cmp eax, 0x4542414c
jne 0x42d939
cmp dword [ebp + 0x74], 0
je 0x42d95e
push dword [ebp + 0x7c]
mov ecx, dword [ebp + 0x60]
push dword [ebp + 0x74]
add edi, 8
push edi
call fcn.0047b5d6
jmp 0x42dfa6
cmp byte [ebp + 0x5f], 0
je 0x42d85f
push dword [ebp + 0x7c]
mov ecx, dword [ebp + 0x60]
push 0x11
push 0
push dword [ebp + 0x50]
call fcn.0041b06a
add edi, 8
jmp 0x42d642
cmp byte [ebp + 0x5f], 0
je 0x42d87f
push dword [ebp + 0x7c]
mov ecx, dword [ebp + 0x60]
push 0x11
push 0
push dword [ebp + 0x50]
call fcn.0041b06a
mov ecx, dword [ebp + 0x60]
push dword [ebp + 0x7c]
add edi, 8
cmp word [edi], 0x7c
jne 0x42d89b
push 0
push edi
call fcn.00425e89
jmp 0x42dfa6
push dword [ebp + 0x78]
jmp 0x42d890
push dword [ebp + 0x58]
call fcn.00415edf
jmp 0x42e224
push dword [ebp + 0x74]
mov ecx, dword [ebp + 0x60]
add ebx, 8
push ebx
call fcn.00467b04
jmp 0x42dfa6
push dword [ebp + 0x58]
mov ecx, dword [ebp + 0x60]
call fcn.004186f2
jmp 0x42dfa6
push 1
push str.Hide
push dword [ebp + 0x58]
call fcn.0041117f
add esp, 0xc
jmp 0x42dfa6
mov ecx, 0x454d4f48
cmp eax, ecx
ja 0x42d9ec
je 0x42d9db
cmp eax, 0x45444f43
je 0x42d9c8
cmp eax, 0x45474150
je 0x42d9bb
cmp eax, 0x454c4946
je 0x42d9a9
cmp eax, 0x454d414e
je 0x42ddb5
cmp eax, 0x454d4954
je 0x42d98c
cmp eax, 0x454d4f43
je 0x42da4e
xor esi, esi
mov dword [ebp + 0x64], esi
mov ax, word [ebx]
cmp ax, 0x24
mov ecx, ebx
mov dword [ebp + 0x58], ecx
jne 0x42e8de
push esi
push esi
add ebx, 2
push ebx
push dword [ebp + 0x60]
call fcn.004211ad
mov eax, dword [ebp + 0x64]
test eax, eax
je 0x42d96d
mov ecx, dword [ebp + 0x60]
mov ecx, dword [ecx + 0x30]
mov dword [ecx], eax
xor edi, edi
cmp eax, edi
jge 0x42ea4e
push eax
lea eax, [ebp - 0x50]
push str.0x_p
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
jmp 0x42ea5a
cmp dword [ebp + 0x74], 0
je 0x42d95e
push dword [ebp + 0x7c]
mov ecx, dword [ebp + 0x60]
push dword [ebp + 0x74]
add edi, 8
push edi
call fcn.0047ba17
jmp 0x42dfa6
mov ecx, dword [ebp + 0x60]
push 0
push dword [ebp + 0x58]
call fcn.00414fae
jmp 0x42dfa6
push dword [ebp + 0x58]
call fcn.0041f8d5
jmp 0x42e224
mov ecx, dword [ebp + 0x60]
push 0
add edi, 8
push edi
call fcn.00457c44
jmp 0x42dfa6
mov ecx, dword [ebp + 0x60]
add edi, 8
push edi
call fcn.0046e087
jmp 0x42dfa6
cmp eax, 0x45534142
je 0x42dad7
cmp eax, 0x45544144
je 0x42dac3
cmp eax, 0x45544953
je 0x42daaf
cmp eax, 0x45544f4e
je 0x42da4e
cmp eax, 0x45564948
je 0x42da3a
cmp eax, 0x455a4953
jne 0x42d939
push dword [ebp + 0x74]
mov ecx, dword [ebp + 0x60]
add ebx, 8
push ebx
call fcn.004432ec
jmp 0x42dfa6
push dword [ebp + 0x74]
mov ecx, dword [ebp + 0x60]
add ebx, 8
push ebx
call fcn.004601b3
jmp 0x42dfa6
add ebx, 8
lea ecx, [ebp + 0x74]
mov dword [ebp + 0x74], ebx
call fcn.0040e2c3
mov edi, dword [ebp + 0x74]
mov ax, word [edi]
cmp ax, 0x31
jb 0x42da6e
cmp ax, 0x39
jbe 0x42da82
mov esi, dword [sym.imp.SHLWAPI.dll_StrCmpNIW]
push 2
push 0x4ac130
push edi
call esi
test eax, eax
jne 0x42da8b
mov byte [0x4bf2a4], 1
jmp 0x42daa6
cmp word [edi], 0x30
je 0x42da9f
push 3
push 0x4ac128
push edi
call esi
test eax, eax
jne 0x42daa6
mov byte [0x4bf2a4], 0
and dword [ebp + 0x64], 0
jmp 0x42d95e
push dword [ebp + 0x74]
mov ecx, dword [ebp + 0x60]
add edi, 8
push edi
call fcn.00460896
jmp 0x42dfa6
push dword [ebp + 0x74]
mov ecx, dword [ebp + 0x60]
add ebx, 8
push ebx
call fcn.00467292
jmp 0x42dfa6
mov ecx, dword [ebp + 0x60]
add edi, 8
push edi
call fcn.0047e2de
jmp 0x42dfa6
push dword [ebp + 0x74]
mov ecx, dword [ebp + 0x60]
add edi, 8
push edi
call fcn.00467bad
jmp 0x42dfa6
mov ecx, 0x4b4d554e
cmp eax, ecx
ja 0x42dcb3
je 0x42dca6
mov ecx, 0x49474552
cmp eax, ecx
ja 0x42dbf9
je 0x42dbe6
cmp eax, 0x46545550
je 0x42dbd2
cmp eax, 0x46574246
je 0x42dbc2
cmp eax, 0x47414d49
je 0x42dba5
cmp eax, 0x48534148
je 0x42db92
cmp eax, 0x48544150
je 0x42db82
cmp eax, 0x49444152
jne 0x42d939
cmp dword [ebp + 0x74], 0
je 0x42d95e
cmp edx, 4
jne 0x42d95e
push dword [ebp + 0x7c]
mov ecx, dword [ebp + 0x60]
push dword [ebp + 0x74]
add edi, 8
push edi
call fcn.0047215f
jmp 0x42dfa6
push dword [ebp + 0x58]
mov ecx, dword [ebp + 0x60]
call fcn.0041bff4
jmp 0x42dfa6
mov ecx, dword [ebp + 0x60]
push 0
add ebx, 8
push ebx
call fcn.0048005e
jmp 0x42dfa6
cmp edx, 4
jne 0x42d95e
push dword [ebp + 0x74]
mov ecx, dword [ebp + 0x60]
add edi, 8
push edi
call fcn.0047c50e
jmp 0x42dfa6
push dword [ebp + 0x58]
mov ecx, dword [ebp + 0x60]
call fcn.00414800
jmp 0x42dfa6
push dword [ebp + 0x74]
mov ecx, dword [ebp + 0x60]
add edi, 8
push edi
call fcn.00468de9
jmp 0x42dfa6
mov ecx, dword [ebp + 0x60]
push 0
add edi, 8
push edi
call fcn.00456701
jmp 0x42dfa6
sub eax, 0x49564544
je 0x42dc96
sub eax, 0x901
je 0x42dc85
sub eax, 0xec070e
je 0x42dc71
sub eax, 0x100f9f9
je 0x42dc5e
sub eax, 7
je 0x42dc4a
sub eax, 0x1f8f0
jne 0x42d939
cmp dword [ebp + 0x74], 0
je 0x42d95e
push dword [ebp + 0x7c]
mov ecx, dword [ebp + 0x60]
push dword [ebp + 0x74]
add edi, 8
push edi
call fcn.00471f2d
jmp 0x42dfa6
push dword [ebp + 0x74]
mov ecx, dword [ebp + 0x60]
add ebx, 8
push ebx
call fcn.0047cf24
jmp 0x42dfa6
mov ecx, dword [ebp + 0x60]
push 0
add ebx, 8
push ebx
call fcn.0046c91c
jmp 0x42dfa6
push dword [ebp + 0x74]
mov ecx, dword [ebp + 0x60]
add ebx, 8
push ebx
call fcn.0044a03b
jmp 0x42dfa6
push dword [ebp + 0x74]
add edi, 8
push edi
push 0
add ebx, 8
jmp 0x42d5c5
push dword [ebp + 0x58]
mov ecx, dword [ebp + 0x60]
call fcn.004296e0
jmp 0x42dfa6
push dword [ebp + 0x58]
call fcn.004109ab
jmp 0x42e224
mov ecx, 0x4c4c4143
cmp eax, ecx
ja 0x42dd83
je 0x42dd62
cmp eax, 0x4b4e494c
je 0x42dd51
cmp eax, 0x4b4e4c46
je 0x42dd3d
cmp eax, 0x4b534944
je 0x42dd2c
cmp eax, 0x4b544f48
je 0x42dd19
cmp eax, 0x4c424154
je 0x42dd05
cmp eax, 0x4c454853
jne 0x42d939
push dword [ebp + 0x58]
call fcn.00424536
jmp 0x42e224
push dword [ebp + 0x74]
mov ecx, dword [ebp + 0x60]
add edi, 8
push edi
call fcn.00481bae
jmp 0x42dfa6
mov ecx, dword [ebp + 0x60]
push 0
add edi, 8
push edi
call fcn.00417fe1
jmp 0x42dfa6
mov ecx, dword [ebp + 0x60]
add ebx, 8
push ebx
call fcn.00483e39
jmp 0x42dfa6
push dword [ebp + 0x74]
mov ecx, dword [ebp + 0x60]
add edi, 8
push edi
call fcn.0045fd8e
jmp 0x42dfa6
mov ecx, dword [ebp + 0x60]
add edi, 8
push edi
call fcn.004155cc
jmp 0x42dfa6
mov eax, dword [ebp + 0x58]
cmp word [eax], 0x24
jne 0x42ea1b
push edi
push 0
add eax, 2
push eax
push dword [ebp + 0x60]
call fcn.004211ad
jmp 0x42dfa6
cmp eax, 0x4c4c4157
je 0x42de7c
cmp eax, 0x4c4c494b
je 0x42de05
cmp eax, 0x4c525453
je 0x42ddf1
cmp eax, 0x4c534441
je 0x42dddd
cmp eax, 0x4d414554
je 0x42ddc9
cmp eax, 0x4d414e46
jne 0x42d939
push dword [ebp + 0x74]
mov ecx, dword [ebp + 0x60]
add ebx, 8
push ebx
call fcn.0045fca6
jmp 0x42dfa6
push dword [ebp + 0x7c]
mov ecx, dword [ebp + 0x60]
add edi, 8
push edi
call fcn.00419ab5
jmp 0x42ea43
push dword [ebp + 0x74]
mov ecx, dword [ebp + 0x60]
add ebx, 8
push ebx
call fcn.00461c5c
jmp 0x42dfa6
push dword [ebp + 0x74]
mov ecx, dword [ebp + 0x60]
add ebx, 8
push ebx
call fcn.004657e4
jmp 0x42dfa6
xor ebx, ebx
add edi, 8
inc ebx
cmp word [edi], 0x2a
jne 0x42de24
inc edi
inc edi
cmp word [edi], 0x2a
jne 0x42de24
push 2
pop ebx
add edi, ebx
cmp word [edi], 0x2a
je 0x42de1c
lea ecx, [ebp + 0x58]
mov dword [ebp + 0x58], edi
call fcn.0040e2c3
mov edi, dword [ebp + 0x58]
mov ax, word [edi]
cmp ax, 0x5c
je 0x42de6a
cmp ax, 0x40
je 0x42de6a
mov esi, str.svr
push esi
call dword [sym.imp.KERNEL32.DLL_lstrlenA]
push eax
push edi
push esi
call fcn.00439124
add esp, 0xc
test al, al
jne 0x42de6a
mov ecx, dword [ebp + 0x60]
push edi
call fcn.00416871
jmp 0x42dfa6
mov ecx, dword [ebp + 0x60]
push ebx
push dword [ebp + 0x74]
push edi
call fcn.0045084e
jmp 0x42dfa6
push dword [ebp + 0x58]
call fcn.00418693
jmp 0x42e224
cmp dword [ebp + 0x74], 0
je 0x42d95e
push dword [ebp + 0x7c]
mov ecx, dword [ebp + 0x60]
push dword [ebp + 0x74]
add edi, 8
push edi
call fcn.00481646
jmp 0x42dfa6
mov ecx, 0x534f504c
cmp eax, ecx
ja 0x42e2ae
je 0x42e298
mov ecx, 0x504e5055
cmp eax, ecx
ja 0x42e106
je 0x42e0f8
mov ecx, 0x4e554f4d
cmp eax, ecx
ja 0x42e030
je 0x42e01c
cmp eax, 0x4d495444
je 0x42e008
cmp eax, 0x4d524f46
je 0x42dff7
cmp eax, 0x4e49414d
je 0x42df59
cmp eax, 0x4e495053
je 0x42df45
cmp eax, 0x4e495753
je 0x42df2a
cmp eax, 0x4e524353
jne 0x42d939
push dword [ebp + 0x74]
mov ecx, dword [ebp + 0x60]
add ebx, 8
push ebx
call fcn.00460503
jmp 0x42dfa6
cmp dword [ebp + 0x74], 0
je 0x42d95e
push dword [ebp + 0x74]
mov ecx, dword [ebp + 0x60]
add ebx, 8
push ebx
call fcn.0047be20
jmp 0x42dfa6
push dword [ebp + 0x7c]
mov ecx, dword [ebp + 0x60]
push dword [ebp + 0x74]
add edi, 8
push edi
call fcn.0047ca95
jmp 0x42dfa6
cmp byte [ebp + 0x5f], 0
je 0x42df71
push dword [ebp + 0x7c]
mov ecx, dword [ebp + 0x60]
push 0x11
push 0
push dword [ebp + 0x50]
call fcn.0041b06a
mov esi, dword [ebp + 0x58]
jmp 0x42df8c
push 3
push esi
push 0x4a75ac
call fcn.00439124
add esp, 0xc
test al, al
jne 0x42df98
inc esi
inc esi
cmp word [esi], 0x2a
je 0x42df76
cmp word [esi], 0
jne 0x42dfae
add ebx, 8
push ebx
mov ecx, 0x4c0fb8
call fcn.0042bdd5
mov dword [ebp + 0x64], eax
jmp 0x42d95e
mov esi, 0x4c0c28
push str.PECMD
mov ecx, esi
call fcn.0044655b
push ebx
mov ecx, esi
call fcn.0043ddea
mov eax, dword [ebp + 0x60]
mov word [eax + 0x88], 2
lea ecx, [ebp + 0x40]
call fcn.00437e1a
lea ecx, [ebp + 0x44]
call fcn.00437e1a
lea ecx, [ebp + 0x34]
call fcn.00437e1a
xor eax, eax
pop edi
pop esi
pop ebx
add ebp, 0x68
leave
ret 0x10
push dword [ebp + 0x74]
mov ecx, dword [ebp + 0x60]
add ebx, 8
push ebx
call fcn.0045e7a2
jmp 0x42dfa6
push dword [ebp + 0x7c]
mov ecx, dword [ebp + 0x60]
push dword [ebp + 0x74]
add edi, 8
push edi
call fcn.00451521
jmp 0x42dfa6
push dword [ebp + 0x74]
mov ecx, dword [ebp + 0x60]
add edi, 8
push edi
call fcn.00484973
jmp 0x42dfa6
cmp eax, 0x4e574f44
je 0x42e0eb
cmp eax, 0x4f474f4c
je 0x42e0dd
cmp eax, 0x4f4d454d
je 0x42e0bc
cmp eax, 0x50494350
je 0x42e0a8
cmp eax, 0x504c4548
je 0x42e07a
cmp eax, 0x504d4554
jne 0x42d939
push dword [ebp + 0x74]
mov ecx, dword [ebp + 0x60]
add ebx, 8
push ebx
call fcn.00462934
jmp 0x42dfa6
push 5
push 0x12e
push dword [0x4c0ea0]
call dword [sym.imp.KERNEL32.DLL_FindResourceW]
test eax, eax
je 0x42dfd3
mov ecx, dword [ebp + 0x60]
push 0
add ebx, 8
push ebx
call fcn.0042c6e7
jmp 0x42dfa6
push dword [ebp + 0x74]
mov ecx, dword [ebp + 0x60]
add edi, 8
push edi
call fcn.00475f55
jmp 0x42dfa6
cmp dword [ebp + 0x74], 0
je 0x42d95e
push dword [ebp + 0x7c]
mov ecx, dword [ebp + 0x60]
push dword [ebp + 0x74]
add edi, 8
push edi
call fcn.00450ed2
jmp 0x42dfa6
add ebx, 8
push ebx
call fcn.0042c950
jmp 0x42e224
push dword [ebp + 0x58]
call fcn.00416e58
jmp 0x42e224
add ebx, 8
push ebx
call fcn.0044d3b7
jmp 0x42e224
mov ecx, 0x5254534c
cmp eax, ecx
ja 0x42e1ef
je 0x42e1db
sub eax, 0x504f4f4c
je 0x42e1a9
sub eax, 0x3f9f8
je 0x42e199
sub eax, 0x1edf90c
je 0x42e17b
sub eax, 0x41105
je 0x42e16d
sub eax, 0x3f0f1
je 0x42e159
sub eax, 7
jne 0x42d939
push dword [ebp + 0x58]
mov ecx, dword [ebp + 0x60]
call fcn.0041bfcc
jmp 0x42dfa6
push dword [ebp + 0x74]
mov ecx, dword [ebp + 0x60]
add ebx, 8
push ebx
call fcn.0045ecd1
jmp 0x42dfa6
add edi, 8
push edi
call fcn.00410b11
jmp 0x42e224
cmp dword [ebp + 0x74], 0
je 0x42d95e
push dword [ebp + 0x74]
mov ecx, dword [ebp + 0x60]
add ebx, 8
push ebx
call fcn.004723c9
jmp 0x42dfa6
push dword [ebp + 0x58]
mov ecx, dword [ebp + 0x60]
call fcn.0041e6f6
jmp 0x42dfa6
cmp byte [ebp + 0x5f], 0
je 0x42e1c1
push dword [ebp + 0x7c]
mov ecx, dword [ebp + 0x60]
push 0x11
push 0
push dword [ebp + 0x50]
call fcn.0041b06a
push dword [ebp + 0x7c]
mov ecx, dword [ebp + 0x60]
push dword [ebp + 0x78]
add edi, 8
push dword [ebp + 0x74]
push edi
call fcn.0041ab0e
jmp 0x42dfa6
push dword [ebp + 0x74]
mov ecx, dword [ebp + 0x60]
add ebx, 8
push ebx
call fcn.00465977
jmp 0x42dfa6
sub eax, 0x5254534d
je 0x42e284
sub eax, 5
je 0x42e270
dec eax
je 0x42e26c
sub eax, 0xedee01
je 0x42e24e
sub eax, 0x50df8
je 0x42e22a
sub eax, 0x70606
jne 0x42d939
add edi, 8
push edi
call fcn.00410b03
pop ecx
jmp 0x42dfa6
mov ecx, dword [ebp + 0x60]
xor eax, eax
cmp dword [ebp + 0x50], eax
sete al
add ebx, 8
or eax, dword [ebp + 0x7c]
push eax
push ebx
call fcn.0041b3a1
and dword [ebp + 0x50], 0
mov dword [ebp + 0x64], eax
jmp 0x42d95e
cmp dword [ebp + 0x74], 0
je 0x42d95e
push dword [ebp + 0x74]
mov ecx, dword [ebp + 0x60]
add ebx, 8
push ebx
call fcn.00481a3b
jmp 0x42dfa6
push 1
jmp 0x42e29a
push dword [ebp + 0x74]
mov ecx, dword [ebp + 0x60]
add ebx, 8
push ebx
call fcn.00465ac8
jmp 0x42dfa6
push dword [ebp + 0x74]
mov ecx, dword [ebp + 0x60]
add ebx, 8
push ebx
call fcn.004669c2
jmp 0x42dfa6
push 0
push dword [ebp + 0x74]
mov ecx, dword [ebp + 0x60]
add edi, 8
push edi
call fcn.00465c10
jmp 0x42dfa6
mov ecx, 0x5453494c
cmp eax, ecx
ja 0x42e721
je 0x42e6f7
mov ecx, 0x54494e49
cmp eax, ecx
ja 0x42e397
je 0x42e387
cmp eax, 0x534f5052
je 0x42e373
cmp eax, 0x53504954
je 0x42e35f
cmp eax, 0x53504d43
je 0x42e34b
cmp eax, 0x5353454d
je 0x42e337
cmp eax, 0x54494157
je 0x42e327
cmp eax, 0x54494445
jne 0x42d939
cmp dword [ebp + 0x74], 0
je 0x42d95e
push dword [ebp + 0x7c]
mov ecx, dword [ebp + 0x60]
push dword [ebp + 0x74]
add edi, 8
push edi
call fcn.00450ab4
jmp 0x42dfa6
push dword [ebp + 0x58]
mov ecx, dword [ebp + 0x60]
call fcn.00425e9f
jmp 0x42dfa6
push dword [ebp + 0x74]
mov ecx, dword [ebp + 0x60]
add edi, 8
push edi
call fcn.00477821
jmp 0x42dfa6
push dword [ebp + 0x74]
mov ecx, dword [ebp + 0x60]
add ebx, 8
push ebx
call fcn.004558b0
jmp 0x42dfa6
push dword [ebp + 0x74]
mov ecx, dword [ebp + 0x60]
add edi, 8
push edi
call fcn.00472525
jmp 0x42dfa6
push dword [ebp + 0x74]
mov ecx, dword [ebp + 0x60]
add edi, 8
push edi
call fcn.0046635f
jmp 0x42dfa6
push dword [ebp + 0x58]
mov ecx, dword [ebp + 0x60]
call fcn.004235f0
jmp 0x42dfa6
cmp eax, 0x54495257
je 0x42e6e3
cmp eax, 0x54495845
je 0x42e412
cmp eax, 0x544d4644
je 0x42e3fe
cmp eax, 0x544e4950
je 0x42e3ea
cmp eax, 0x544e4f46
je 0x42e3dd
cmp eax, 0x54524150
jne 0x42d939
push dword [ebp + 0x74]
mov ecx, dword [ebp + 0x60]
add ebx, 8
push ebx
call fcn.00459afe
jmp 0x42dfa6
push dword [ebp + 0x58]
call fcn.00418539
jmp 0x42e224
push dword [ebp + 0x74]
mov ecx, dword [ebp + 0x60]
add edi, 8
push edi
call fcn.00460d31
jmp 0x42dfa6
push dword [ebp + 0x74]
mov ecx, dword [ebp + 0x60]
add ebx, 8
push ebx
call fcn.0044b142
jmp 0x42dfa6
lea ecx, [ebx + 8]
mov dx, word [ecx]
cmp dx, 0x3d
jne 0x42e4a6
xor esi, esi
add ebx, 0xa
lea ecx, [ebp + 0x74]
mov dword [ebp + 0x64], esi
mov dword [ebp + 0x70], esi
mov dword [ebp + 0x74], ebx
call fcn.0040e2c3
push dword [ebp + 0x74]
push str.error
call fcn.004391ba
test al, al
pop ecx
pop ecx
je 0x42e455
mov ecx, dword [ebp + 0x60]
mov eax, dword [ecx + 0x30]
mov eax, dword [eax]
jmp 0x42e48c
lea eax, [ebp + 0x70]
push eax
lea eax, [ebp + 0x74]
push eax
call fcn.0044957c
test eax, eax
pop ecx
pop ecx
jg 0x42e486
mov eax, dword [ebp + 0x74]
cmp word [eax], si
je 0x42e486
mov ecx, dword [ebp + 0x60]
push esi
push 0xffffffffffffffff
push esi
push eax
call fcn.0040f3c5
cmp eax, esi
je 0x42e486
mov eax, dword [eax + 4]
jmp 0x42e489
mov eax, dword [ebp + 0x70]
mov ecx, dword [ebp + 0x60]
mov edx, dword [ecx + 0x30]
mov dword [edx], eax
mov dword [ecx + 0x8c], eax
mov dword [ebp + 0x64], eax
mov byte [ecx + 0x8a], 1
jmp 0x42d96d
mov eax, edx
call fcn.00437e2d
test al, al
jne 0x42e4ba
test dx, dx
jne 0x42d95e
mov dword [ebp + 0x78], ecx
lea ecx, [ebp + 0x78]
call fcn.0040e2c3
mov edi, dword [ebp + 0x60]
mov eax, dword [edi + 0x8c]
lea ecx, [ebp + 0x70]
mov dword [ebp + 0x54], eax
xor ebx, ebx
call fcn.0043dd7e
push 0x2c
lea eax, [ebp + 0x70]
push eax
lea eax, [ebp + 0x78]
push eax
call fcn.004408ab
mov eax, dword [ebp + 0x78]
add esp, 0xc
cmp word [eax], 0x2c
jne 0x42e50b
add dword [ebp + 0x78], 2
lea eax, [ebp + 0x54]
push eax
lea eax, [ebp + 0x78]
push eax
call fcn.0044957c
pop ecx
pop ecx
mov ebx, eax
mov eax, dword [ebp + 0x70]
cmp word [eax], 0
jne 0x42e51b
push 0x40
jmp 0x42e673
push eax
push 0x4ac100
call fcn.004391ba
test al, al
pop ecx
pop ecx
je 0x42e534
xor esi, esi
inc esi
jmp 0x42e674
push dword [ebp + 0x70]
push 0x4a9cdc
call fcn.004391ba
test al, al
pop ecx
pop ecx
jne 0x42e52c
push dword [ebp + 0x70]
push str.FILE
call fcn.004391ba
test al, al
pop ecx
pop ecx
jne 0x42e56d
push dword [ebp + 0x70]
push 0x4aa4b4
call fcn.004391ba
test al, al
pop ecx
pop ecx
je 0x42e574
push 2
jmp 0x42e673
push dword [ebp + 0x70]
push str.FORX
call fcn.004391ba
test al, al
pop ecx
pop ecx
jne 0x42e59a
push dword [ebp + 0x70]
push 0x4ac0ec
call fcn.004391ba
test al, al
pop ecx
pop ecx
je 0x42e5a1
push 4
jmp 0x42e673
push dword [ebp + 0x70]
push str.LOOP
call fcn.004391ba
test al, al
pop ecx
pop ecx
jne 0x42e5c7
push dword [ebp + 0x70]
push 0x4ac0e0
call fcn.004391ba
test al, al
pop ecx
pop ecx
je 0x42e5ce
push 8
jmp 0x42e673
push dword [ebp + 0x70]
push 0x4a7c9c
call fcn.004391ba
test al, al
pop ecx
pop ecx
jne 0x42e5f4
push dword [ebp + 0x70]
push str.BLOCK
call fcn.004391ba
test al, al
pop ecx
pop ecx
je 0x42e5f8
push 0x10
jmp 0x42e673
push dword [ebp + 0x70]
push str.ToWIN
call fcn.004391ba
test al, al
pop ecx
pop ecx
je 0x42e612
mov esi, 0x80
jmp 0x42e674
push dword [ebp + 0x70]
push 0x4ac0cc
call fcn.004391ba
test al, al
pop ecx
pop ecx
je 0x42e644
push 1
push dword [ebp + 0x74]
mov esi, 0x80
or word [edi + 0x88], si
push 0x4a754c
mov ecx, edi
call fcn.0045084e
jmp 0x42e674
push dword [ebp + 0x70]
push str.CONTINUE
call fcn.004391ba
test al, al
pop ecx
pop ecx
je 0x42e65e
mov esi, 0x100
jmp 0x42e674
push dword [ebp + 0x70]
push str.BREAK
call fcn.004391ba
test al, al
pop ecx
pop ecx
je 0x42e6d6
push 0x20
pop esi
or word [edi + 0x88], si
xor esi, esi
cmp ebx, esi
jle 0x42e699
mov eax, dword [edi + 0x30]
mov ecx, dword [ebp + 0x54]
mov dword [eax], ecx
mov eax, dword [ebp + 0x54]
mov dword [edi + 0x8c], eax
mov byte [edi + 0x8a], 1
cmp byte [ebp + 0x5f], 0
je 0x42e6af
push dword [ebp + 0x7c]
mov ecx, edi
push 0x11
push esi
push dword [ebp + 0x50]
call fcn.0041b06a
lea ecx, [ebp + 0x70]
call fcn.00437e1a
lea ecx, [ebp + 0x40]
call fcn.00437e1a
lea ecx, [ebp + 0x44]
call fcn.00437e1a
lea ecx, [ebp + 0x34]
call fcn.00437e1a
mov eax, esi
jmp 0x42dfed
lea ecx, [ebp + 0x70]
call fcn.00437e1a
jmp 0x42d95e
push dword [ebp + 0x74]
mov ecx, dword [ebp + 0x60]
add edi, 8
push edi
call fcn.00464990
jmp 0x42dfa6
cmp dword [ebp + 0x74], 0
je 0x42d95e
cmp edx, 4
jne 0x42d95e
push dword [ebp + 0x7c]
mov ecx, dword [ebp + 0x60]
push dword [ebp + 0x74]
add edi, 8
push edi
call fcn.0047c13a
jmp 0x42dfa6
mov ecx, 0x56524553
cmp eax, ecx
ja 0x42e7eb
je 0x42e7db
sub eax, 0x54554853
je 0x42e7ce
sub eax, 0x2fcf3
je 0x42e7ba
sub eax, 0xe
je 0x42e7a9
sub eax, 0xf5fff9
je 0x42e798
sub eax, 0x10cfa
je 0x42e778
sub eax, 0x102f1ff
jne 0x42d939
push dword [ebp + 0x74]
mov ecx, dword [ebp + 0x60]
add ebx, 8
push ebx
call fcn.0045f105
jmp 0x42dfa6
cmp dword [ebp + 0x74], 0
je 0x42d95e
mov ecx, dword [ebp + 0x60]
push 0
push dword [ebp + 0x74]
add ebx, 8
push ebx
call fcn.0047bbb8
jmp 0x42dfa6
mov ecx, dword [ebp + 0x60]
add edi, 8
push edi
call fcn.0046e2ff
jmp 0x42dfa6
mov ecx, dword [ebp + 0x60]
add edi, 8
push edi
call fcn.0042caf7
jmp 0x42dfa6
push dword [ebp + 0x74]
mov ecx, dword [ebp + 0x60]
add ebx, 8
push ebx
call fcn.0045fbbc
jmp 0x42dfa6
push dword [ebp + 0x58]
call fcn.00416f7d
jmp 0x42e224
push dword [ebp + 0x58]
mov ecx, dword [ebp + 0x60]
call fcn.00413eae
jmp 0x42dfa6
cmp eax, 0x574f4853
je 0x42e8ca
cmp eax, 0x574f5242
je 0x42e8b4
cmp eax, 0x58454649
je 0x42e87b
cmp eax, 0x58524f46
je 0x42e849
cmp eax, 0x59434552
je 0x42e838
cmp eax, 0x59454b48
jne 0x42d939
push dword [ebp + 0x7c]
mov ecx, dword [ebp + 0x60]
push dword [ebp + 0x74]
add edi, 8
push edi
call fcn.0047c3d0
jmp 0x42dfa6
mov ecx, dword [ebp + 0x60]
add ebx, 8
push ebx
call fcn.0044d02c
jmp 0x42dfa6
cmp byte [ebp + 0x5f], 0
je 0x42e861
push dword [ebp + 0x7c]
mov ecx, dword [ebp + 0x60]
push 0x11
push 0
push dword [ebp + 0x50]
call fcn.0041b06a
push dword [ebp + 0x7c]
mov ecx, dword [ebp + 0x60]
push dword [ebp + 0x78]
add edi, 8
push dword [ebp + 0x74]
push edi
call fcn.00474e74
jmp 0x42dfa6
cmp byte [ebp + 0x5f], 0
je 0x42e893
push dword [ebp + 0x7c]
mov ecx, dword [ebp + 0x60]
push 0x11
push 0
push dword [ebp + 0x50]
call fcn.0041b06a
mov ecx, dword [ebp + 0x60]
push dword [ebp + 0x7c]
add edi, 8
cmp word [edi], 0x7c
jne 0x42e8af
push 0
push edi
call fcn.00425e73
jmp 0x42dfa6
push dword [ebp + 0x78]
jmp 0x42e8a4
mov ecx, dword [ebp + 0x60]
push 0
push dword [ebp + 0x74]
add edi, 8
push edi
call fcn.00456081
jmp 0x42dfa6
push dword [ebp + 0x74]
mov ecx, dword [ebp + 0x60]
add ebx, 8
push ebx
call fcn.00481eff
jmp 0x42dfa6
cmp ax, si
je 0x42d95e
push 0x40
pop edx
cmp ax, dx
mov dword [ebp + 0x54], esi
mov dword [ebp + 0x78], esi
jne 0x42e8fe
lea ecx, [ebx + 2]
mov dword [ebp + 0x54], edx
mov dword [ebp + 0x58], ecx
movzx ecx, word [ecx]
cmp cx, 0x2a
je 0x42e913
cmp cx, 0x2d
je 0x42e913
cmp cx, 0x2b
jne 0x42e916
mov dword [ebp + 0x78], ecx
mov ebx, dword [ebp + 0x60]
mov eax, dword [ebx + 0x1c]
mov dword [ebp + 0x30], eax
lea eax, [ebp + 0x30]
push eax
lea eax, [ebp + 0x38]
push eax
push dword [ebp + 0x58]
mov ecx, ebx
mov dword [ebp + 0x38], esi
call fcn.0042478e
mov eax, dword [ebp + 0x78]
or eax, dword [ebp + 0x54]
test ax, ax
jne 0x42ea20
cmp dword [ebp + 0x38], esi
jge 0x42ea20
push dword [ebp + 0x48]
lea ecx, [ebp + 0x78]
push edi
call fcn.004464b4
cmp dword [ebp + 0x48], esi
jle 0x42e97f
lea eax, [ebp + 0x64]
push eax
mov eax, dword [ebp + 0x48]
lea eax, [edi + eax*2]
push eax
push dword [ebp + 0x78]
push dword [ebp + 0x74]
push ebx
call fcn.0040de6a
add esp, 0x14
test al, al
jne 0x42ea13
push 1
push esi
lea eax, [ebp + 0x40]
push eax
push dword [ebp + 0x70]
mov ecx, ebx
call fcn.0044c8eb
mov eax, dword [ebp + 0x40]
lea ecx, [ebp + 0x58]
mov dword [ebp + 0x58], eax
call fcn.0040e2c3
mov edi, dword [ebp + 0x58]
push esi
lea eax, [ebp + 0x38]
push eax
lea eax, [ebp + 0x54]
push eax
mov dword [ebp + 0x54], edi
mov dword [ebp + 0x38], esi
call fcn.00419202
add esp, 0xc
push dword [ebp + 0x38]
lea ecx, [ebp + 0x70]
push dword [ebp + 0x54]
call fcn.004464b4
lea eax, [ebp + 0x70]
push eax
mov word [ebp + 0x76], si
call fcn.0040eaa9
cmp eax, 1
pop ecx
mov ecx, ebx
jne 0x42e9f6
push edi
call fcn.0042f370
lea ecx, [ebp + 0x70]
mov dword [ebp + 0x64], eax
call fcn.00437e1a
lea ecx, [ebp + 0x78]
call fcn.00437e1a
jmp 0x42ea46
push esi
push esi
push esi
push 1
lea eax, [ebp + 0x76]
push eax
push ebx
push dword [ebp + 0x40]
call fcn.00409677
lea ecx, [ebp + 0x70]
mov dword [ebp + 0x64], eax
call fcn.00437e1a
lea ecx, [ebp + 0x78]
jmp 0x42e6d9
mov ebx, dword [ebp + 0x60]
xor esi, esi
cmp byte [ebp + 0x5f], 0
je 0x42ea36
push dword [ebp + 0x7c]
mov ecx, ebx
push 0x11
push esi
push dword [ebp + 0x50]
call fcn.0041b06a
push dword [ebp + 0x74]
mov ecx, ebx
push dword [ebp + 0x58]
call fcn.00424bd0
mov dword [ebp + 0x64], eax
mov eax, dword [ebp + 0x64]
jmp 0x42d96d
cdq
push edx
push eax
lea eax, [ebp - 0x50]
push eax
call fcn.004878e2
mov esi, dword [ebp + 0x60]
add esp, 0xc
test byte [esi + 9], 0xf
jne 0x42ea76
lea eax, [ebp - 0x50]
push eax
push 0x4aa594
mov ecx, esi
call fcn.0043d658
lea eax, [ebp - 0x50]
push eax
push 0x4aa590
mov ecx, esi
call fcn.0043d658
cmp dword [0x4c0eb0], edi
mov byte [0x4c0e8c], 1
je 0x42eaab
cmp dword [ebp + 0x50], edi
je 0x42eaab
push dword [ebp + 0x7c]
mov ecx, esi
push edi
push dword [ebp + 0x64]
push dword [ebp + 0x50]
call fcn.0041b06a
lea ecx, [ebp + 0x40]
call fcn.00437e1a
mov esi, dword [ebp + 0x60]
test byte [esi + 0xd], 1
je 0x42eace
push dword [ebp + 0x34]
call fcn.00437dec
push dword [ebp + 0x44]
call fcn.00437dec
pop ecx
pop ecx
mov esi, dword [ebp + 0x64]
jmp 0x42e6bf
mov edi, dword [ebp + 0x60]
movzx eax, word [edi + 0x2c]
push 0
push eax
push esi
call fcn.00411027
add esp, 0xc
or esi, 1
push esi
mov ecx, edi
call fcn.00478a76
mov esi, eax
jmp 0x42e6b7