Function at 0x41c6d5
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x4c
push ebx
push esi
push edi
mov eax, dword [ebp + 8]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
movsx eax, byte [eax]
mov ecx, dword [ebp - 0x2c]
movsx ecx, byte [ecx + 1]
cmp eax, ecx
jne 0x41c717
mov eax, dword [ebp - 0x2c]
movsx eax, byte [eax + 2]
test eax, eax
jne 0x41c717
mov dword [0x42c164], 1
jmp 0x41dede
inc dword [ebp - 0x2c]
mov dword [0x42b0d0], 0
mov eax, dword [0x42b0d0]
mov dword [0x42b0ac], eax
mov eax, dword [0x42b0ac]
mov dword [0x42b0a8], eax
mov eax, dword [ebp - 0x2c]
movsx eax, byte [eax]
push eax
call dword [sym.imp.MSVCRT20.dll_toupper]
add esp, 4
cmp eax, 0x48
jne 0x41c764
mov eax, dword [ebp - 0x2c]
movsx eax, byte [eax + 1]
cmp eax, 0x32
jne 0x41c764
inc dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
movsx eax, byte [eax]
cmp eax, 0x32
jne 0x41c780
mov dword [0x42b0d0], 1
inc dword [ebp - 0x2c]
mov dword [ebp - 0x20], 0
mov eax, dword [ebp - 0x2c]
movsx eax, byte [eax]
mov dword [ebp - 4], eax
inc dword [ebp - 0x2c]
cmp dword [ebp - 4], 0
je 0x41dede
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.MSVCRT20.dll_toupper]
add esp, 4
mov dword [ebp - 4], eax
cmp dword [0x42b0ac], 0
je 0x41c7d4
mov dword [ebp - 0x18], str.JABCDEFGHIKLMNOPQRSTUVWXYZ_
mov dword [ebp - 0x28], str.0130111100001010020301000040
mov dword [ebp - 0x10], 0x432550
jmp 0x41c837
cmp dword [0x42b0a8], 0
je 0x41c7fb
mov dword [ebp - 0x18], str.HABCDEFGIKLMNOPQRSTUVWXYZ_2
mov dword [ebp - 0x28], str.00000140090001020000010002200
mov dword [ebp - 0x10], 0x4325c8
jmp 0x41c837
cmp dword [0x42b0d0], 0
je 0x41c822
mov dword [ebp - 0x18], str.2ABCDEFHIKLOPRSTX
mov dword [ebp - 0x28], str.00001001010200000
mov dword [ebp - 0x10], 0x432640
jmp 0x41c837
mov dword [ebp - 0x18], str.JHABCDEFGIKLMNOPQRSTUVWXYZ____2_
mov dword [ebp - 0x28], str.001502130600400100313000000000102000
mov dword [ebp - 0x10], 0x4324b8
movsx eax, byte [ebp - 4]
push eax
mov eax, dword [ebp - 0x18]
push eax
call dword [sym.imp.MSVCRT20.dll_strchr]
add esp, 8
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
jne 0x41c867
mov eax, dword [ebp + 8]
push eax
push 0x42f800
call fcn.004081d7
add esp, 8
mov eax, dword [ebp - 0x24]
sub eax, dword [ebp - 0x18]
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x28]
mov al, byte [eax + ecx]
mov byte [ebp - 8], al
mov eax, dword [ebp - 0x2c]
push eax
call fcn.0041c41e
add esp, 4
mov dword [ebp - 0x30], eax
cmp dword [0x42b0ac], 0
jne 0x41c8e4
cmp dword [0x42b0a8], 0
jne 0x41c8e4
cmp dword [0x42b0d0], 0
jne 0x41c8e4
cmp dword [ebp - 4], 0x47
jne 0x41c8e4
cmp dword [ebp - 0x30], 0
je 0x41c8e4
mov dword [ebp - 0x20], 1
mov dword [0x42c0f8], 1
mov eax, dword [ebp - 0x2c]
mov dword [0x42cc14], eax
jmp 0x41deb9
cmp dword [0x42b0ac], 0
jne 0x41c966
cmp dword [0x42b0a8], 0
jne 0x41c966
cmp dword [0x42b0d0], 0
jne 0x41c966
cmp dword [ebp - 4], 0x45
jne 0x41c966
cmp dword [ebp - 0x30], 0
je 0x41c966
mov dword [ebp - 0x20], 1
lea eax, [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0x2c]
push eax
call fcn.0041c57e
add esp, 8
mov dword [0x42b5f8], eax
cmp dword [0x42b5f8], 0
jne 0x41c957
mov dword [0x42c24c], 1
jmp 0x41c961
mov dword [0x42c24c], 2
jmp 0x41deb9
cmp dword [0x42b0ac], 0
jne 0x41c9bf
cmp dword [0x42b0a8], 0
jne 0x41c9bf
cmp dword [0x42b0d0], 0
jne 0x41c9bf
cmp dword [ebp - 4], 0x4c
jne 0x41c9bf
cmp dword [ebp - 0x30], 0
je 0x41c9bf
mov dword [ebp - 0x20], 1
mov dword [0x42b484], 1
mov eax, dword [ebp - 0x2c]
mov dword [0x42c0fc], eax
jmp 0x41deb9
cmp dword [0x42b0ac], 0
jne 0x41cbb9
cmp dword [0x42b0a8], 0
jne 0x41cbb9
cmp dword [0x42b0d0], 0
jne 0x41cbb9
cmp dword [ebp - 4], 0x4f
jne 0x41cbb9
cmp dword [ebp - 0x30], 0
je 0x41cbb9
mov dword [ebp - 0x20], 1
mov eax, dword [ebp - 0x2c]
movsx eax, byte [eax]
push eax
call dword [sym.imp.MSVCRT20.dll_toupper]
add esp, 4
cmp eax, 0x42
jne 0x41ca52
inc dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
movsx eax, byte [eax]
cmp eax, 0x2d
jne 0x41ca3b
mov dword [0x42b47c], 0
jmp 0x41ca4d
mov dword [0x42b47c], 1
mov eax, dword [ebp - 0x2c]
mov dword [0x42c320], eax
jmp 0x41cbb4
mov eax, dword [ebp - 0x2c]
movsx eax, byte [eax]
push eax
call dword [sym.imp.MSVCRT20.dll_toupper]
add esp, 4
cmp eax, 0x44
jne 0x41cad6
inc dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
movsx eax, byte [eax]
cmp eax, 0x2d
jne 0x41ca8c
mov dword [0x42b4a8], 0
jmp 0x41cad1
mov eax, dword [ebp - 0x2c]
movsx eax, byte [eax]
push eax
call dword [sym.imp.MSVCRT20.dll_toupper]
add esp, 4
cmp eax, 0x42
jne 0x41cabf
mov dword [0x42b47c], 2
inc dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov dword [0x42c320], eax
jmp 0x41cad1
mov dword [0x42b4a8], 2
mov eax, dword [ebp - 0x2c]
mov dword [0x42b600], eax
jmp 0x41cbb4
mov eax, dword [ebp - 0x2c]
movsx eax, byte [eax]
push eax
call dword [sym.imp.MSVCRT20.dll_toupper]
add esp, 4
cmp eax, 0x43
jne 0x41cb3c
inc dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
movsx eax, byte [eax]
push eax
call dword [sym.imp.MSVCRT20.dll_toupper]
add esp, 4
cmp eax, 0x42
jne 0x41cb25
mov dword [0x42b47c], 3
inc dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov dword [0x42c320], eax
jmp 0x41cb37
mov dword [0x42b4a8], 3
mov eax, dword [ebp - 0x2c]
mov dword [0x42b600], eax
jmp 0x41cbb4
mov eax, dword [ebp - 0x2c]
movsx eax, byte [eax]
push eax
call dword [sym.imp.MSVCRT20.dll_toupper]
add esp, 4
cmp eax, 0x41
jne 0x41cba2
inc dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
movsx eax, byte [eax]
push eax
call dword [sym.imp.MSVCRT20.dll_toupper]
add esp, 4
cmp eax, 0x42
jne 0x41cb8b
mov dword [0x42b47c], 4
inc dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov dword [0x42c320], eax
jmp 0x41cb9d
mov dword [0x42b4a8], 4
mov eax, dword [ebp - 0x2c]
mov dword [0x42b600], eax
jmp 0x41cbb4
mov dword [0x42b4a8], 1
mov eax, dword [ebp - 0x2c]
mov dword [0x42b600], eax
jmp 0x41deb9
cmp dword [0x42b0ac], 0
jne 0x41cce7
cmp dword [0x42b0a8], 0
jne 0x41cce7
cmp dword [0x42b0d0], 0
jne 0x41cce7
cmp dword [ebp - 4], 0x54
jne 0x41cce7
cmp dword [ebp - 0x30], 0
je 0x41cce7
mov dword [ebp - 0x20], 1
mov dword [0x42b538], 1
mov eax, dword [ebp - 0x2c]
movsx eax, byte [eax]
sub eax, 0x30
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
je 0x41cc36
cmp dword [ebp - 0x1c], 1
je 0x41cc36
mov eax, dword [ebp + 8]
push eax
push 0x42f800
call fcn.004081d7
add esp, 8
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x1c], 1
jne 0x41cc4d
mov dword [0x42b538], 2
mov eax, dword [ebp - 0x2c]
movsx eax, byte [eax]
push eax
call dword [sym.imp.MSVCRT20.dll_toupper]
add esp, 4
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0x47
je 0x41cc74
cmp dword [ebp - 4], 0x46
jne 0x41ccb6
cmp dword [ebp - 4], 0x47
jne 0x41cc8d
mov dword [0x42b538], 4
jmp 0x41ccae
cmp dword [ebp - 4], 0x46
jne 0x41ccae
cmp dword [0x42b538], 3
jge 0x41ccae
mov dword [0x42b538], 3
inc dword [ebp - 0x2c]
jmp 0x41cc4d
mov eax, dword [ebp - 0x2c]
movsx eax, byte [eax]
cmp eax, 0x2e
jne 0x41ccda
mov eax, dword [ebp - 0x2c]
mov dword [0x42b5f0], eax
mov eax, dword [ebp - 0x1c]
mov dword [0x42b838], eax
jmp 0x41cce2
mov eax, dword [ebp - 0x1c]
mov dword [0x42b14c], eax
jmp 0x41deb9
cmp dword [0x42b0ac], 0
jne 0x41cfce
cmp dword [0x42b0a8], 0
jne 0x41cfce
cmp dword [0x42b0d0], 0
jne 0x41cfce
cmp dword [ebp - 4], 0x56
jne 0x41cfce
cmp dword [ebp - 0x30], 0
je 0x41cfce
mov dword [ebp - 0x20], 1
mov dword [0x42b5c0], 1
mov eax, dword [ebp - 0x2c]
movsx eax, byte [eax]
test eax, eax
je 0x41cfa3
mov eax, dword [ebp - 0x2c]
movsx eax, byte [eax]
push eax
call dword [sym.imp.MSVCRT20.dll_toupper]
add esp, 4
mov byte [ebp - 0x34], al
movsx eax, byte [ebp - 0x34]
cmp eax, 0x56
jne 0x41cd73
inc dword [ebp - 0x2c]
mov dword [0x42c1f4], 1
jmp 0x41cf9e
movsx eax, byte [ebp - 0x34]
cmp eax, 0x57
jne 0x41cd92
inc dword [ebp - 0x2c]
mov dword [0x42cc10], 1
jmp 0x41cf9e
movsx eax, byte [ebp - 0x34]
cmp eax, 0x41
jne 0x41cdbb
inc dword [ebp - 0x2c]
mov dword [0x42b5c0], 2
mov dword [0x42c238], 0x2710
jmp 0x41cf9e
movsx eax, byte [ebp - 0x34]
cmp eax, 0x45
jne 0x41cdda
inc dword [ebp - 0x2c]
mov dword [0x42b404], 1
jmp 0x41cf9e
movsx eax, byte [ebp - 0x34]
cmp eax, 0x49
jne 0x41cdf9
inc dword [ebp - 0x2c]
mov dword [0x42c234], 1
jmp 0x41cf9e
movsx eax, byte [ebp - 0x34]
cmp eax, 0x50
jne 0x41ce44
inc dword [ebp - 0x2c]
mov dword [0x42c130], 1
lea eax, [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0x2c]
push eax
call fcn.0041c57e
add esp, 8
mov dword [0x42b4cc], eax
cmp dword [0x42b4cc], 0
jne 0x41ce3f
mov dword [0x42b4cc], 0xa
jmp 0x41cf9e
movsx eax, byte [ebp - 0x34]
cmp eax, 0x52
jne 0x41ce6e
inc dword [ebp - 0x2c]
lea eax, [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0x2c]
push eax
call fcn.0041c57e
add esp, 8
mov dword [0x42b5c8], eax
jmp 0x41cf9e
movsx eax, byte [ebp - 0x34]
cmp eax, 0x53
je 0x41ce95
movsx eax, byte [ebp - 0x34]
cmp eax, 0x5a
je 0x41ce95
movsx eax, byte [ebp - 0x34]
cmp eax, 0x44
jne 0x41cf25
inc dword [ebp - 0x2c]
mov dword [0x42b490], 1
movsx eax, byte [ebp - 0x34]
cmp eax, 0x5a
jne 0x41cebe
mov dword [0x42b490], 2
jmp 0x41cef4
movsx eax, byte [ebp - 0x34]
cmp eax, 0x44
jne 0x41cef4
mov dword [0x42b490], 3
mov eax, dword [ebp - 0x2c]
movsx eax, byte [eax]
test eax, eax
jne 0x41cef4
mov eax, dword [ebp + 8]
push eax
push 0x42f800
call fcn.004081d7
add esp, 8
mov eax, dword [ebp - 0x2c]
movsx eax, byte [eax]
test eax, eax
je 0x41cf20
mov eax, dword [ebp - 0x2c]
mov dword [0x42c23c], eax
mov eax, dword [ebp - 0x2c]
movsx eax, byte [eax]
test eax, eax
je 0x41cf20
inc dword [ebp - 0x2c]
jmp 0x41cf0a
jmp 0x41cf9e
call dword [sym.imp.MSVCRT20.dll___p___mb_cur_max]
cmp dword [eax], 1
jle 0x41cf4c
push 4
movsx eax, byte [ebp - 0x34]
push eax
call dword [sym.imp.MSVCRT20.dll__isctype]
add esp, 8
mov dword [ebp - 0x40], eax
jmp 0x41cf64
call dword [sym.imp.MSVCRT20.dll___p__pctype]
mov eax, dword [eax]
movsx ecx, byte [ebp - 0x34]
xor edx, edx
mov dx, word [eax + ecx*2]
and edx, 4
mov dword [ebp - 0x40], edx
cmp dword [ebp - 0x40], 0
je 0x41cf8d
lea eax, [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0x2c]
push eax
call fcn.0041c57e
add esp, 8
mov dword [0x42c238], eax
jmp 0x41cfa3
mov eax, dword [ebp + 8]
push eax
push 0x42f800
call fcn.004081d7
add esp, 8
jmp 0x41cd33
mov eax, dword [0x42c238]
push eax
call fcn.0041c3a0
add esp, 4
mov dword [0x42c238], eax
mov eax, dword [0x42b5c8]
push eax
call fcn.0041c3a0
add esp, 4
mov dword [0x42b5c8], eax
jmp 0x41deb9
cmp dword [0x42b0ac], 0
jne 0x41d027
cmp dword [0x42b0a8], 0
jne 0x41d027
cmp dword [0x42b0d0], 0
jne 0x41d027
cmp dword [ebp - 4], 0x57
jne 0x41d027
cmp dword [ebp - 0x30], 0
je 0x41d027
mov dword [ebp - 0x20], 1
mov dword [0x42c1dc], 1
mov eax, dword [ebp - 0x2c]
mov dword [0x42c140], eax
jmp 0x41deb9
cmp dword [0x42b0ac], 0
jne 0x41d0b2
cmp dword [0x42b0a8], 0
jne 0x41d0b2
cmp dword [0x42b0d0], 0
jne 0x41d0b2
cmp dword [ebp - 4], 0x58
jne 0x41d0b2
cmp dword [ebp - 0x30], 0
je 0x41d0b2
cmp dword [0x42c13c], 0
jne 0x41d090
push 0x42b160
call fcn.00419e4d
add esp, 4
push 0
push 0xfffe
push 0x42b160
call fcn.00419f50
add esp, 0xc
mov dword [ebp - 0x20], 1
mov dword [0x42c13c], 1
mov eax, dword [ebp - 0x2c]
push eax
call fcn.00401e6e
add esp, 4
jmp 0x41deb9
cmp dword [0x42b0ac], 0
jne 0x41d10b
cmp dword [0x42b0a8], 0
jne 0x41d10b
cmp dword [0x42b0d0], 0
jne 0x41d10b
cmp dword [ebp - 4], 0x5a
jne 0x41d10b
cmp dword [ebp - 0x30], 0
je 0x41d10b
mov dword [ebp - 0x20], 1
mov dword [0x42b530], 1
mov eax, dword [ebp - 0x2c]
mov dword [0x42b5b0], eax
jmp 0x41deb9
cmp dword [0x42b0ac], 0
jne 0x41d171
cmp dword [0x42b0a8], 0
jne 0x41d171
cmp dword [0x42b0d0], 0
jne 0x41d171
cmp dword [ebp - 4], 0x21
jne 0x41d171
cmp dword [ebp - 0x30], 0
je 0x41d171
mov dword [ebp - 0x20], 1
mov dword [0x42cc90], 1
mov eax, dword [ebp - 0x2c]
movsx eax, byte [eax]
push eax
call dword [sym.imp.MSVCRT20.dll_toupper]
add esp, 4
mov byte [0x42c1d4], al
jmp 0x41deb9
cmp dword [0x42b0ac], 0
jne 0x41d280
cmp dword [0x42b0a8], 0
jne 0x41d280
cmp dword [0x42b0d0], 0
jne 0x41d280
cmp dword [ebp - 4], 0x24
jne 0x41d280
cmp dword [ebp - 0x30], 0
je 0x41d280
mov dword [ebp - 0x20], 1
mov dword [0x42b5ec], 1
mov eax, dword [ebp - 0x2c]
movsx eax, byte [eax]
push eax
call dword [sym.imp.MSVCRT20.dll_toupper]
add esp, 4
mov byte [0x42b5d0], al
call dword [sym.imp.MSVCRT20.dll___p___mb_cur_max]
cmp dword [eax], 1
jle 0x41d1fe
push 0x103
mov eax, dword [ebp - 0x2c]
movsx eax, byte [eax]
push eax
call dword [sym.imp.MSVCRT20.dll__isctype]
add esp, 8
mov dword [ebp - 0x44], eax
jmp 0x41d21b
call dword [sym.imp.MSVCRT20.dll___p__pctype]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x2c]
movsx ecx, byte [ecx]
xor edx, edx
mov dx, word [eax + ecx*2]
and edx, 0x103
mov dword [ebp - 0x44], edx
cmp dword [ebp - 0x44], 0
je 0x41d23a
mov eax, dword [ebp - 0x2c]
push eax
call sub.MSVCRT20.dll_strlen
add esp, 4
cmp eax, 2
jbe 0x41d24b
mov eax, dword [ebp + 8]
push eax
push 0x42f800
call fcn.004081d7
add esp, 8
mov eax, dword [ebp - 0x2c]
movsx eax, byte [eax + 1]
cmp eax, 0x3a
je 0x41d27b
mov eax, dword [ebp - 0x2c]
movsx eax, byte [eax + 1]
test eax, eax
je 0x41d27b
mov eax, dword [ebp + 8]
push eax
push 0x42f800
call fcn.004081d7
add esp, 8
jmp 0x41deb9
cmp dword [0x42b0ac], 0
jne 0x41d2c7
cmp dword [0x42b0a8], 0
jne 0x41d2c7
cmp dword [0x42b0d0], 0
jne 0x41d2c7
cmp dword [ebp - 4], 0x2b
jne 0x41d2c7
cmp dword [ebp - 0x30], 0
je 0x41d2c7
mov dword [ebp - 0x20], 1
jmp 0x41deb9
cmp dword [0x42b0a8], 0
je 0x41d300
cmp dword [ebp - 4], 0x42
jne 0x41d300
mov dword [ebp - 0x20], 1
mov dword [0x42c12c], 1
mov eax, dword [ebp - 0x2c]
push eax
call fcn.0041c2a9
add esp, 4
jmp 0x41deb9
cmp dword [0x42b0a8], 0
je 0x41d33f
cmp dword [ebp - 4], 0x43
jne 0x41d33f
cmp dword [ebp - 0x30], 0
je 0x41d33f
mov dword [ebp - 0x20], 1
mov dword [0x42c0e4], 1
mov eax, dword [ebp - 0x2c]
mov dword [0x42c37c], eax
jmp 0x41deb9
cmp dword [0x42b0a8], 0
je 0x41d393
cmp dword [ebp - 4], 0x44
jne 0x41d393
mov eax, dword [ebp - 0x2c]
movsx eax, byte [eax]
test eax, eax
jne 0x41d375
mov eax, dword [ebp + 8]
push eax
push 0x42f800
call fcn.004081d7
add esp, 8
mov dword [ebp - 0x20], 1
mov dword [0x42c144], 1
mov eax, dword [ebp - 0x2c]
mov dword [0x42c3a8], eax
jmp 0x41deb9
cmp dword [0x42b0a8], 0
je 0x41d3f5
cmp dword [ebp - 4], 0x47
jne 0x41d3f5
mov dword [ebp - 0x20], 1
mov dword [0x42c3d0], 1
mov eax, dword [ebp - 0x2c]
movsx eax, byte [eax]
cmp eax, 0x21
jne 0x41d3e8
mov eax, dword [ebp - 0x2c]
movsx eax, byte [eax + 1]
test eax, eax
jne 0x41d3e8
mov dword [0x42c3d0], 2
jmp 0x41d3f0
mov eax, dword [ebp - 0x2c]
mov dword [0x42c0b4], eax
jmp 0x41deb9
cmp dword [0x42b0a8], 0
je 0x41d477
cmp dword [ebp - 4], 0x4d
jne 0x41d477
mov dword [ebp - 0x20], 1
mov dword [0x42b494], 2
lea eax, [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0x2c]
push eax
call fcn.0041c57e
add esp, 8
mov dword [0x42c28c], eax
cmp dword [0x42c28c], 0
jne 0x41d449
mov dword [0x42c28c], 0x7cfffffb
mov eax, dword [ebp - 0x2c]
movsx eax, byte [eax]
cmp eax, 0x21
jne 0x41d472
mov eax, dword [ebp - 0x2c]
movsx eax, byte [eax + 1]
test eax, eax
je 0x41d472
inc dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov dword [0x42b4b4], eax
jmp 0x41deb9
cmp dword [0x42b0a8], 0
je 0x41d4ac
cmp dword [ebp - 4], 0x4e
jne 0x41d4ac
mov dword [ebp - 0x20], 1
mov dword [0x42c128], 1
mov eax, dword [ebp - 0x2c]
mov dword [0x42b4ac], eax
jmp 0x41deb9
cmp dword [0x42b0a8], 0
je 0x41d4e1
cmp dword [ebp - 4], 0x50
jne 0x41d4e1
mov dword [ebp - 0x20], 1
mov dword [0x42b8a0], 1
mov eax, dword [ebp - 0x2c]
mov dword [0x42b83c], eax
jmp 0x41deb9
cmp dword [0x42b0a8], 0
je 0x41d5a9
cmp dword [ebp - 4], 0x54
jne 0x41d5a9
mov dword [ebp - 0x20], 1
mov dword [0x42b40c], 1
mov eax, dword [ebp - 0x2c]
push eax
call sub.MSVCRT20.dll_strlen
add esp, 4
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
dec eax
add eax, dword [ebp - 0x2c]
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
movsx eax, byte [eax]
cmp eax, 0x20
jne 0x41d539
dec dword [ebp - 0x38]
jmp 0x41d522
mov eax, dword [ebp - 0x38]
movsx eax, byte [eax]
push eax
push 0x432eb0
call dword [sym.imp.MSVCRT20.dll_strchr]
add esp, 8
test eax, eax
je 0x41d563
mov eax, dword [ebp - 0x2c]
mov dword [0x42b408], eax
jmp 0x41d5a4
mov eax, dword [ebp - 0x3c]
add eax, 2
push eax
call fcn.0041a3d0
add esp, 4
mov dword [0x42b408], eax
mov eax, dword [ebp - 0x2c]
push eax
mov eax, dword [0x42b408]
push eax
call sub.MSVCRT20.dll_strcpy
add esp, 8
mov eax, dword [ebp - 0x3c]
mov ecx, dword [0x42b408]
mov byte [eax + ecx], 0x5c
mov eax, dword [ebp - 0x3c]
mov ecx, dword [0x42b408]
mov byte [eax + ecx + 1], 0
jmp 0x41deb9
cmp dword [0x42b0a8], 0
je 0x41d5de
cmp dword [ebp - 4], 0x56
jne 0x41d5de
mov dword [ebp - 0x20], 1
mov dword [0x42c138], 1
mov eax, dword [ebp - 0x2c]
mov dword [0x42b4c8], eax
jmp 0x41deb9
cmp dword [0x42b0a8], 0
je 0x41d642
cmp dword [ebp - 4], 0x58
jne 0x41d642
mov dword [ebp - 0x20], 1
mov dword [0x42b858], 1
mov eax, dword [ebp - 0x2c]
mov dword [0x42b438], eax
mov eax, dword [ebp - 0x2c]
movsx eax, byte [eax]
cmp eax, 0x2e
jne 0x41d62c
mov eax, dword [ebp - 0x2c]
movsx eax, byte [eax + 1]
test eax, eax
jne 0x41d63d
mov eax, dword [ebp + 8]
push eax
push 0x42f800
call fcn.004081d7
add esp, 8
jmp 0x41deb9
cmp dword [0x42b0a8], 0
je 0x41d677
cmp dword [ebp - 4], 0x5a
jne 0x41d677
mov dword [ebp - 0x20], 1
mov dword [0x42b49c], 1
mov eax, dword [ebp - 0x2c]
mov dword [0x42b3f8], eax
jmp 0x41deb9
cmp dword [0x42b0a8], 0
je 0x41d707
cmp dword [ebp - 4], 0x23
jne 0x41d707
mov eax, dword [ebp - 0x2c]
movsx eax, byte [eax]
test eax, eax
je 0x41d707
call dword [sym.imp.MSVCRT20.dll___p___mb_cur_max]
cmp dword [eax], 1
jle 0x41d6c5
push 4
mov eax, dword [ebp - 0x2c]
movsx eax, byte [eax]
push eax
call dword [sym.imp.MSVCRT20.dll__isctype]
add esp, 8
mov dword [ebp - 0x48], eax
jmp 0x41d6df
call dword [sym.imp.MSVCRT20.dll___p__pctype]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x2c]
movsx ecx, byte [ecx]
xor edx, edx
mov dx, word [eax + ecx*2]
and edx, 4
mov dword [ebp - 0x48], edx
cmp dword [ebp - 0x48], 0
jne 0x41d707
mov dword [ebp - 0x20], 1
mov dword [0x42c3cc], 1
mov eax, dword [ebp - 0x2c]
mov dword [0x42ccb8], eax
jmp 0x41deb9
cmp dword [0x42b0ac], 0
je 0x41d753
cmp dword [ebp - 4], 0x43
jne 0x41d753
cmp dword [ebp - 0x30], 0
je 0x41d753
mov dword [ebp - 0x20], 1
mov dword [0x42b850], 1
lea eax, [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0x2c]
push eax
call fcn.0041c57e
add esp, 8
mov dword [0x42cc88], eax
jmp 0x41deb9
cmp dword [0x42b0ac], 0
je 0x41d79f
cmp dword [ebp - 4], 0x44
jne 0x41d79f
cmp dword [ebp - 0x30], 0
je 0x41d79f
mov dword [ebp - 0x20], 1
mov dword [0x42c19c], 1
lea eax, [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0x2c]
push eax
call fcn.0041c57e
add esp, 8
mov dword [0x42c228], eax
jmp 0x41deb9
cmp dword [0x42b0ac], 0
je 0x41d8bb
cmp dword [ebp - 4], 0x42
jne 0x41d8bb
cmp dword [ebp - 0x30], 0
je 0x41d8bb
mov dword [ebp - 0x20], 1
mov dword [0x42b5f4], 1
mov eax, dword [ebp - 0x2c]
movsx eax, byte [eax]
cmp eax, 0x2a
jne 0x41d7fc
inc dword [ebp - 0x2c]
mov dword [0x42c380], 1
mov dword [0x42c1d8], 0x7ffc
jmp 0x41d8b6
lea eax, [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0x2c]
push eax
call fcn.0041c57e
add esp, 8
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov dword [0x42c380], eax
mov eax, dword [0x42c380]
mov dword [0x42c1d8], eax
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x4c], eax
inc dword [ebp - 0x2c]
mov eax, dword [ebp - 0x4c]
movsx eax, byte [eax]
cmp eax, 0x2d
jne 0x41d892
mov eax, dword [ebp - 0x2c]
movsx eax, byte [eax]
test eax, eax
jne 0x41d856
mov dword [0x42c1d8], 0x7ffc
jmp 0x41d892
lea eax, [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0x2c]
push eax
call fcn.0041c57e
add esp, 8
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov dword [0x42c1d8], eax
cmp dword [0x42c1d8], 0xfa
jle 0x41d892
mov eax, dword [ebp + 8]
push eax
push 0x42f800
call fcn.004081d7
add esp, 8
cmp dword [0x42c380], 0
jne 0x41d8b6
cmp dword [0x42c1d8], 0
jne 0x41d8b6
mov dword [0x42b5f4], 2
jmp 0x41deb9
cmp dword [0x42b0ac], 0
je 0x41d938
cmp dword [ebp - 4], 0x48
jne 0x41d938
cmp dword [ebp - 0x30], 0
je 0x41d938
mov dword [ebp - 0x20], 1
mov dword [0x42c374], 1
lea eax, [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0x2c]
push eax
call fcn.0041c57e
add esp, 8
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0x800
jb 0x41d91a
cmp dword [ebp - 0x14], 0xffff
jbe 0x41d92b
mov eax, dword [ebp + 8]
push eax
push 0x42f800
call fcn.004081d7
add esp, 8
mov eax, dword [ebp - 0x14]
mov dword [0x42c300], eax
jmp 0x41deb9
cmp dword [0x42b0ac], 0
je 0x41d977
cmp dword [ebp - 4], 0x49
jne 0x41d977
cmp dword [ebp - 0x30], 0
je 0x41d977
mov dword [ebp - 0x20], 1
mov dword [0x42b498], 1
mov eax, dword [ebp - 0x2c]
mov dword [0x42b45c], eax
jmp 0x41deb9
cmp dword [0x42b0ac], 0
je 0x41d9b6
cmp dword [ebp - 4], 0x4e
jne 0x41d9b6
cmp dword [ebp - 0x30], 0
je 0x41d9b6
mov dword [ebp - 0x20], 1
mov dword [0x42c0b8], 1
mov eax, dword [ebp - 0x2c]
mov dword [0x42b184], eax
jmp 0x41deb9
cmp dword [0x42b0ac], 0
je 0x41d9f5
cmp dword [ebp - 4], 0x51
jne 0x41d9f5
cmp dword [ebp - 0x30], 0
je 0x41d9f5
mov dword [ebp - 0x20], 1
mov dword [0x42b414], 1
mov eax, dword [ebp - 0x2c]
mov dword [0x42c284], eax
jmp 0x41deb9
cmp dword [0x42b0ac], 0
je 0x41da51
cmp dword [ebp - 4], 0x50
jne 0x41da51
cmp dword [ebp - 0x30], 0
je 0x41da51
mov dword [ebp - 0x20], 1
mov dword [0x42c330], 1
lea eax, [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0x2c]
push eax
call fcn.0041c57e
add esp, 8
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0
jbe 0x41da4c
mov eax, dword [ebp - 0x14]
mov dword [0x42cca8], eax
jmp 0x41deb9
cmp dword [0x42b0ac], 0
je 0x41da9f
cmp dword [ebp - 4], 0x53
jne 0x41da9f
cmp dword [ebp - 0x30], 0
je 0x41da9f
mov dword [ebp - 0x20], 1
mov dword [0x42b610], 1
mov eax, dword [0x42c32c]
push eax
call dword [sym.imp.MSVCRT20.dll_free]
add esp, 4
mov eax, dword [ebp - 0x2c]
mov dword [0x42c32c], eax
jmp 0x41deb9
cmp dword [0x42b0ac], 0
je 0x41dade
cmp dword [ebp - 4], 0x57
jne 0x41dade
cmp dword [ebp - 0x30], 0
je 0x41dade
mov dword [ebp - 0x20], 1
mov dword [0x42c2f0], 1
mov eax, dword [ebp - 0x2c]
mov dword [0x42c1e8], eax
jmp 0x41deb9
cmp dword [0x42b0ac], 0
je 0x41db2a
cmp dword [ebp - 4], 0x58
jne 0x41db2a
cmp dword [ebp - 0x30], 0
je 0x41db2a
mov dword [ebp - 0x20], 1
mov dword [0x42c318], 1
lea eax, [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0x2c]
push eax
call fcn.0041c57e
add esp, 8
mov dword [0x42c218], eax
jmp 0x41deb9
cmp dword [0x42b0ac], 0
je 0x41db77
cmp dword [ebp - 4], 0x59
jne 0x41db77
cmp dword [ebp - 0x30], 0
je 0x41db77
mov dword [ebp - 0x20], 1
mov dword [0x42c288], 1
mov eax, dword [ebp - 0x2c]
mov dword [0x42c1f0], eax
mov eax, dword [0x42c1f0]
push eax
call fcn.0041c47c
add esp, 4
jmp 0x41deb9
cmp dword [0x42b0ac], 0
je 0x41dbb6
cmp dword [ebp - 4], 0x5a
jne 0x41dbb6
cmp dword [ebp - 0x30], 0
je 0x41dbb6
mov dword [ebp - 0x20], 1
mov dword [0x42cc94], 1
mov eax, dword [ebp - 0x2c]
mov dword [0x42c370], eax
jmp 0x41deb9
cmp dword [0x42b0d0], 0
je 0x41dc17
cmp dword [ebp - 4], 0x45
jne 0x41dc17
mov dword [ebp - 0x20], 1
cmp dword [ebp - 0x30], 0
jne 0x41dbed
mov dword [0x42b5a4], 0
jmp 0x41dc12
mov dword [0x42c31c], 1
push 0
push 0
push 0
push 0
mov eax, dword [ebp - 0x2c]
push eax
push 0
push 0x42b510
call fcn.0041a03d
add esp, 0x1c
jmp 0x41deb9
cmp dword [0x42b0d0], 0
je 0x41dc63
cmp dword [ebp - 4], 0x49
jne 0x41dc63
cmp dword [ebp - 0x30], 0
je 0x41dc63
mov dword [ebp - 0x20], 1
mov dword [0x42b46c], 1
lea eax, [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0x2c]
push eax
call fcn.0041c57e
add esp, 8
mov dword [0x42c280], eax
jmp 0x41deb9
cmp dword [0x42b0d0], 0
je 0x41dd4c
cmp dword [ebp - 4], 0x50
jne 0x41dd4c
cmp dword [ebp - 0x30], 0
jne 0x41dc95
mov eax, dword [ebp + 8]
push eax
push 0x42f800
call fcn.004081d7
add esp, 8
lea eax, [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0x2c]
push eax
call fcn.0041c57e
add esp, 8
mov dword [0x42b5d8], eax
cmp dword [0x42b5d8], 1
jl 0x41dcc4
cmp dword [0x42b5d8], 4
jle 0x41dcd5
mov eax, dword [ebp + 8]
push eax
push 0x42f800
call fcn.004081d7
add esp, 8
push 0x3a
mov eax, dword [ebp - 0x2c]
push eax
call dword [sym.imp.MSVCRT20.dll_strchr]
add esp, 8
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0
jne 0x41dd00
mov dword [0x42b5dc], 0
jmp 0x41dd47
mov eax, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0x2c]
push eax
call fcn.0041c57e
add esp, 8
mov dword [0x42b5dc], eax
cmp dword [0x42b5dc], 0xfffffffe
jl 0x41dd36
cmp dword [0x42b5dc], 2
jle 0x41dd47
mov eax, dword [ebp + 8]
push eax
push 0x42f800
call fcn.004081d7
add esp, 8
jmp 0x41deb9
cmp dword [0x42b0d0], 0
je 0x41ddb5
cmp dword [ebp - 4], 0x58
jne 0x41ddb5
mov dword [ebp - 0x20], 1
cmp dword [ebp - 0x30], 0
jne 0x41dd8b
push 0x4326c8
push 0x42f300
call fcn.004081d7
add esp, 8
jmp 0x41ddb0
mov dword [0x42c250], 1
push 0
push 0
push 0
push 0
mov eax, dword [ebp - 0x2c]
push eax
push 0
push 0x42c390
call fcn.0041a03d
add esp, 0x1c
jmp 0x41deb9
mov eax, dword [ebp - 0x2c]
movsx eax, byte [eax]
cmp eax, 0x2b
jne 0x41dddb
mov eax, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x10]
mov eax, dword [ecx + eax*4]
mov dword [eax], 1
inc dword [ebp - 0x2c]
jmp 0x41deb9
mov eax, dword [ebp - 0x2c]
movsx eax, byte [eax]
cmp eax, 0x2d
jne 0x41de01
mov eax, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x10]
mov eax, dword [ecx + eax*4]
mov dword [eax], 0
inc dword [ebp - 0x2c]
jmp 0x41deb9
mov eax, dword [ebp - 0x2c]
movsx eax, byte [eax]
cmp eax, 0x30
jl 0x41de84
mov eax, dword [ebp - 0x2c]
movsx eax, byte [eax]
cmp eax, 0x39
jg 0x41de84
cmp dword [0x42c144], 0
je 0x41de45
push 0x73
mov eax, dword [0x42c3a8]
push eax
call dword [sym.imp.MSVCRT20.dll_strchr]
add esp, 8
test eax, eax
jne 0x41de68
mov eax, dword [ebp - 0x2c]
movsx eax, byte [eax]
movsx ecx, byte [ebp - 8]
cmp eax, ecx
jle 0x41de68
mov eax, dword [ebp + 8]
push eax
push 0x42f800
call fcn.004081d7
add esp, 8
mov eax, dword [ebp - 0x2c]
movsx eax, byte [eax]
sub eax, 0x2f
mov ecx, dword [ebp - 0xc]
mov edx, dword [ebp - 0x10]
mov ecx, dword [edx + ecx*4]
mov dword [ecx], eax
inc dword [ebp - 0x2c]
jmp 0x41deb9
mov eax, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x10]
mov eax, dword [ecx + eax*4]
cmp dword [eax], 0
jne 0x41deaa
mov eax, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x10]
mov eax, dword [ecx + eax*4]
mov dword [eax], 1
jmp 0x41deb9
mov eax, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x10]
mov eax, dword [ecx + eax*4]
mov dword [eax], 0
cmp dword [ebp - 0x20], 0
je 0x41ded9
mov eax, dword [ebp - 0x2c]
movsx eax, byte [eax]
test eax, eax
je 0x41ded9
inc dword [ebp - 0x2c]
jmp 0x41dec3
jmp 0x41c787
pop edi
pop esi
pop ebx
leave
ret