Function at 0x41d5f0
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x84
push ebx
push esi
mov esi, dword [ebp + 8]
xor eax, eax
push edi
or edi, 0xffffffff
xor ebx, ebx
xor edx, edx
xor ecx, ecx
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x14], ebx
mov dword [ebp - 4], eax
mov dword [ebp - 8], edx
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], edi
mov dword [ebp - 0xc], edi
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x30], edi
cmp esi, eax
je 0x41e476
cmp byte [esi], al
jne 0x41d64a
or eax, 0xffffffff
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0x34]
mov edx, dword [ebp - 8]
mov ebx, dword [ebp - 0x14]
mov eax, ecx
inc ecx
cmp eax, 0x3e8
mov dword [ebp - 0x34], ecx
jg 0x41d637
mov al, byte [esi]
movsx edi, al
lea ecx, [edi - 0x2b]
cmp ecx, 0x4c
ja case.0x41d66f.44
movzx ecx, byte [ecx + 0x41e4cc]
jmp dword [ecx*4 + 0x41e480]
mov ecx, dword [ebp - 4]
test ecx, ecx
jne 0x41d69f
mov al, byte [esi + 1]
cmp al, 0x70
je 0x41d688
cmp al, 0x50
jne 0x41d69f
mov al, byte [esi + 2]
cmp al, 0x72
je 0x41d693
cmp al, 0x52
jne 0x41d69f
mov dword [ebp - 4], 0xb
jmp case.0x41d66f.44
test edx, edx
jne 0x41d6c5
mov al, byte [esi + 1]
cmp al, 0x73
je 0x41d6ae
cmp al, 0x53
jne 0x41d6c5
mov al, byte [esi + 2]
cmp al, 0x74
je 0x41d6b9
cmp al, 0x54
jne 0x41d6c5
mov dword [ebp - 8], 0x1c
jmp case.0x41d66f.44
test ecx, ecx
jne case.0x41d66f.44
mov al, byte [esi + 1]
cmp al, 0x75
je 0x41d6dc
cmp al, 0x55
jne case.0x41d66f.44
mov al, byte [esi + 2]
cmp al, 0x67
je 0x41d6eb
cmp al, 0x47
jne case.0x41d66f.44
mov dword [ebp - 4], 0xf
jmp case.0x41d66f.44
test edx, edx
jne case.0x41d66f.44
mov al, byte [esi + 1]
cmp al, 0x73
je 0x41d70e
cmp al, 0x53
jne case.0x41d66f.44
mov al, byte [esi + 2]
cmp al, 0x74
je 0x41d71d
cmp al, 0x54
jne case.0x41d66f.44
mov dword [ebp - 8], 0x1f
jmp case.0x41d66f.44
test edx, edx
jne case.0x41d66f.44
mov al, byte [esi + 1]
cmp al, 0x64
je 0x41d73c
cmp al, 0x44
jne 0x41d755
mov cl, byte [esi + 2]
cmp cl, 0x74
je 0x41d749
cmp cl, 0x54
jne 0x41d755
mov dword [ebp - 8], 0x19
jmp case.0x41d66f.44
cmp al, 0x73
je 0x41d761
cmp al, 0x53
jne case.0x41d66f.44
mov al, byte [esi + 2]
cmp al, 0x74
je 0x41d770
cmp al, 0x54
jne case.0x41d66f.44
mov dword [ebp - 8], 0x18
jmp case.0x41d66f.44
cmp dword [ebp - 4], 0
jne case.0x41d66f.44
mov al, byte [esi + 1]
cmp al, 0x65
je 0x41d795
cmp al, 0x45
jne case.0x41d66f.44
mov al, byte [esi + 2]
cmp al, 0x63
je 0x41d7a4
cmp al, 0x43
jne case.0x41d66f.44
mov dword [ebp - 4], 0x13
jmp case.0x41d66f.44
test edx, edx
jne case.0x41d66f.44
mov al, byte [esi + 1]
cmp al, 0x64
je 0x41d7c3
cmp al, 0x44
jne 0x41d7dc
mov cl, byte [esi + 2]
cmp cl, 0x74
je 0x41d7d0
cmp cl, 0x54
jne 0x41d7dc
mov dword [ebp - 8], 0x1b
jmp case.0x41d66f.44
cmp al, 0x65
je 0x41d7e4
cmp al, 0x45
jne 0x41d7fd
mov cl, byte [esi + 2]
cmp cl, 0x74
je 0x41d7f1
cmp cl, 0x54
jne 0x41d7fd
mov dword [ebp - 8], 0x21
jmp case.0x41d66f.44
cmp al, 0x73
je 0x41d809
cmp al, 0x53
jne case.0x41d66f.44
mov al, byte [esi + 2]
cmp al, 0x74
je 0x41d818
cmp al, 0x54
jne case.0x41d66f.44
mov dword [ebp - 8], 0x1a
jmp case.0x41d66f.44
cmp dword [ebp - 4], 0
jne 0x41d84c
mov al, byte [esi + 1]
cmp al, 0x65
je 0x41d835
cmp al, 0x45
jne 0x41d84c
mov al, byte [esi + 2]
cmp al, 0x62
je 0x41d840
cmp al, 0x42
jne 0x41d84c
mov dword [ebp - 4], 9
jmp case.0x41d66f.44
test ebx, ebx
jne case.0x41d66f.44
mov al, byte [esi + 1]
cmp al, 0x72
je 0x41d863
cmp al, 0x52
jne case.0x41d66f.44
mov al, byte [esi + 2]
cmp al, 0x69
je 0x41d872
cmp al, 0x49
jne case.0x41d66f.44
mov dword [ebp - 0x14], 6
jmp case.0x41d66f.44
test edx, edx
jne case.0x41d66f.44
mov al, byte [esi + 1]
cmp al, 0x6d
je 0x41d895
cmp al, 0x4d
jne case.0x41d66f.44
mov al, byte [esi + 2]
cmp al, 0x74
je 0x41d8a4
cmp al, 0x54
jne case.0x41d66f.44
mov dword [ebp - 8], 0x1e
jmp case.0x41d66f.44
mov ecx, dword [ebp - 4]
test ecx, ecx
jne 0x41d8d9
mov al, byte [esi + 1]
cmp al, 0x61
je 0x41d8c2
cmp al, 0x41
jne 0x41d8d9
mov al, byte [esi + 2]
cmp al, 0x6e
je 0x41d8cd
cmp al, 0x4e
jne 0x41d8d9
mov dword [ebp - 4], 8
jmp case.0x41d66f.44
test edx, edx
jne 0x41d8ff
mov al, byte [esi + 1]
cmp al, 0x73
je 0x41d8e8
cmp al, 0x53
jne 0x41d8ff
mov al, byte [esi + 2]
cmp al, 0x74
je 0x41d8f3
cmp al, 0x54
jne 0x41d8ff
mov dword [ebp - 8], 0x22
jmp case.0x41d66f.44
test ecx, ecx
jne case.0x41d66f.44
mov al, byte [esi + 1]
cmp al, 0x75
je 0x41d912
cmp al, 0x55
jne 0x41d92b
mov cl, byte [esi + 2]
cmp cl, 0x6c
je 0x41d91f
cmp cl, 0x4c
jne 0x41d92b
mov dword [ebp - 4], 0xe
jmp case.0x41d66f.44
cmp al, 0x75
je 0x41d937
cmp al, 0x55
jne case.0x41d66f.44
mov al, byte [esi + 2]
cmp al, 0x6e
je 0x41d946
cmp al, 0x4e
jne case.0x41d66f.44
mov dword [ebp - 4], 0xd
jmp case.0x41d66f.44
cmp dword [ebp - 4], 0
jne 0x41d99b
mov al, byte [esi + 1]
cmp al, 0x61
je 0x41d963
cmp al, 0x41
jne 0x41d97c
mov cl, byte [esi + 2]
cmp cl, 0x72
je 0x41d970
cmp cl, 0x52
jne 0x41d97c
mov dword [ebp - 4], 0xa
jmp case.0x41d66f.44
cmp al, 0x61
je 0x41d984
cmp al, 0x41
jne 0x41d99b
mov al, byte [esi + 2]
cmp al, 0x79
je 0x41d98f
cmp al, 0x59
jne 0x41d99b
mov dword [ebp - 4], 0xc
jmp case.0x41d66f.44
test edx, edx
jne 0x41d9e2
mov al, byte [esi + 1]
cmp al, 0x64
je 0x41d9aa
cmp al, 0x44
jne 0x41d9c3
mov cl, byte [esi + 2]
cmp cl, 0x74
je 0x41d9b7
cmp cl, 0x54
jne 0x41d9c3
mov dword [ebp - 8], 0x17
jmp case.0x41d66f.44
cmp al, 0x65
je 0x41d9cb
cmp al, 0x45
jne 0x41d9e2
mov al, byte [esi + 2]
cmp al, 0x74
je 0x41d9d6
cmp al, 0x54
jne 0x41d9e2
mov dword [ebp - 8], 0x20
jmp case.0x41d66f.44
test ebx, ebx
jne 0x41da08
mov al, byte [esi + 1]
cmp al, 0x6f
je 0x41d9f1
cmp al, 0x4f
jne 0x41da08
mov al, byte [esi + 2]
cmp al, 0x6e
je 0x41d9fc
cmp al, 0x4e
jne 0x41da08
mov dword [ebp - 0x14], 2
jmp case.0x41d66f.44
test edx, edx
jne case.0x41d66f.44
mov al, byte [esi + 1]
cmp al, 0x73
je 0x41da1f
cmp al, 0x53
jne case.0x41d66f.44
mov al, byte [esi + 2]
cmp al, 0x74
je 0x41da2e
cmp al, 0x54
jne case.0x41d66f.44
mov dword [ebp - 8], 0x16
jmp case.0x41d66f.44
cmp dword [ebp - 4], 0
jne 0x41da62
mov al, byte [esi + 1]
cmp al, 0x6f
je 0x41da4b
cmp al, 0x4f
jne 0x41da62
mov al, byte [esi + 2]
cmp al, 0x76
je 0x41da56
cmp al, 0x56
jne 0x41da62
mov dword [ebp - 4], 0x12
jmp case.0x41d66f.44
test edx, edx
jne case.0x41d66f.44
mov al, byte [esi + 1]
cmp al, 0x73
je 0x41da79
cmp al, 0x53
jne case.0x41d66f.44
mov al, byte [esi + 2]
cmp al, 0x74
je 0x41da88
cmp al, 0x54
jne case.0x41d66f.44
mov dword [ebp - 8], 0x1d
jmp case.0x41d66f.44
cmp dword [ebp - 4], 0
jne case.0x41d66f.44
mov al, byte [esi + 1]
cmp al, 0x63
je 0x41daad
cmp al, 0x43
jne case.0x41d66f.44
mov al, byte [esi + 2]
cmp al, 0x74
je 0x41dabc
cmp al, 0x54
jne case.0x41d66f.44
mov dword [ebp - 4], 0x11
jmp case.0x41d66f.44
test edx, edx
jne case.0x41d66f.44
mov al, byte [esi + 1]
cmp al, 0x64
je 0x41dadb
cmp al, 0x44
jne 0x41daf4
mov cl, byte [esi + 2]
cmp cl, 0x74
je 0x41dae8
cmp cl, 0x54
jne 0x41daf4
mov dword [ebp - 8], 0x15
jmp case.0x41d66f.44
cmp al, 0x73
je 0x41db00
cmp al, 0x53
jne case.0x41d66f.44
mov al, byte [esi + 2]
cmp al, 0x74
je 0x41db0f
cmp al, 0x54
jne case.0x41d66f.44
mov dword [ebp - 8], 0x14
jmp case.0x41d66f.44
test ebx, ebx
jne 0x41db41
mov al, byte [esi + 1]
cmp al, 0x61
je 0x41db2a
cmp al, 0x41
jne 0x41db41
mov al, byte [esi + 2]
cmp al, 0x74
je 0x41db35
cmp al, 0x54
jne 0x41db41
mov dword [ebp - 0x14], 7
jmp case.0x41d66f.44
cmp dword [ebp - 4], 0
jne 0x41db69
mov al, byte [esi + 1]
cmp al, 0x65
je 0x41db52
cmp al, 0x45
jne 0x41db69
mov al, byte [esi + 2]
cmp al, 0x70
je 0x41db5d
cmp al, 0x50
jne 0x41db69
mov dword [ebp - 4], 0x10
jmp case.0x41d66f.44
test ebx, ebx
jne case.0x41d66f.44
mov al, byte [esi + 1]
cmp al, 0x75
je 0x41db80
cmp al, 0x55
jne case.0x41d66f.44
mov al, byte [esi + 2]
cmp al, 0x6e
je 0x41db8f
cmp al, 0x4e
jne case.0x41d66f.44
mov dword [ebp - 0x14], 1
jmp case.0x41d66f.44
test ebx, ebx
jne case.0x41d66f.44
mov al, byte [esi + 1]
cmp al, 0x68
je 0x41dbae
cmp al, 0x48
jne 0x41dbc7
mov cl, byte [esi + 2]
cmp cl, 0x75
je 0x41dbbb
cmp cl, 0x55
jne 0x41dbc7
mov dword [ebp - 0x14], 5
jmp case.0x41d66f.44
cmp al, 0x75
je 0x41dbd3
cmp al, 0x55
jne case.0x41d66f.44
mov al, byte [esi + 2]
cmp al, 0x65
je 0x41dbe2
cmp al, 0x45
jne case.0x41d66f.44
mov dword [ebp - 0x14], 3
jmp case.0x41d66f.44
test edx, edx
jne case.0x41d66f.44
mov al, byte [esi + 1]
cmp al, 0x74
je 0x41dc05
cmp al, 0x54
jne case.0x41d66f.44
mov al, byte [esi + 2]
cmp al, 0x41
jl 0x41dc14
cmp al, 0x5a
jle case.0x41d66f.44
cmp al, 0x61
jl 0x41dc20
cmp al, 0x7a
jle case.0x41d66f.44
mov dword [ebp - 8], 0x1e
jmp case.0x41d66f.44
test ebx, ebx
jne case.0x41d66f.44
mov al, byte [esi + 1]
cmp al, 0x65
je 0x41dc43
cmp al, 0x45
jne case.0x41d66f.44
mov al, byte [esi + 2]
cmp al, 0x64
je 0x41dc52
cmp al, 0x44
jne case.0x41d66f.44
mov dword [ebp - 0x14], 4
jmp case.0x41d66f.44
cmp dword [ebp - 0x20], 0xffffffff
je 0x41dc6a
inc esi
jmp case.0x41d66f.44
test edx, edx
je 0x41dc79
cmp edx, 0x1e
je 0x41dc79
inc esi
jmp case.0x41d66f.44
xor edx, edx
cmp al, 0x2b
sete dl
inc esi
mov eax, esi
lea edx, [edx + edx - 1]
mov edi, edx
mov dl, byte [esi]
cmp dl, 0x30
jl case.0x41d66f.44
mov cl, dl
cmp cl, 0x39
jg 0x41dca4
mov cl, byte [eax + 1]
inc eax
cmp cl, 0x30
jge 0x41dc96
cmp esi, eax
je case.0x41d66f.44
sub eax, esi
cmp eax, 4
jne 0x41dcea
movsx ecx, byte [esi + 1]
movsx eax, dl
lea eax, [eax + eax*4]
lea eax, [ecx + eax*2]
lea edx, [eax + eax*2]
movsx eax, byte [esi + 2]
lea eax, [eax + edx*2]
movsx edx, byte [esi + 3]
lea ecx, [eax + eax*4]
lea eax, [edx + ecx*2 - 0x7dd0]
imul edi, eax
mov dword [ebp - 0x20], edi
mov dword [ebp - 8], 0x1e
jmp case.0x41d66f.44
cmp eax, 2
jne 0x41dd02
movsx ecx, byte [esi + 1]
movsx eax, dl
lea eax, [eax + eax*4]
lea ecx, [ecx + eax*2 - 0x210]
jmp 0x41dd11
cmp eax, 1
jne case.0x41d66f.44
movsx ecx, dl
sub ecx, 0x30
mov eax, ecx
shl eax, 4
sub eax, ecx
add eax, eax
add eax, eax
imul edi, eax
mov dword [ebp - 0x20], edi
mov dword [ebp - 8], 0x1e
jmp case.0x41d66f.44
lea eax, [esi + 1]
mov ecx, eax
mov dl, byte [ecx]
cmp dl, 0x30
mov dword [ebp - 0x28], 0xffffffff
jl 0x41dd4f
cmp dl, 0x39
jg 0x41dd4f
mov dl, byte [ecx + 1]
inc ecx
cmp dl, 0x30
jge 0x41dd41
mov dl, byte [ecx]
cmp dl, 0x3a
jne 0x41deb3
cmp dword [ebp - 0x2c], 0
jl 0x41dd6a
cmp dword [ebp - 0x24], 0
jge case.0x41d66f.44
mov edx, ecx
sub edx, esi
cmp edx, 2
jg case.0x41d66f.44
jne 0x41dd8b
movsx eax, byte [eax]
lea edx, [edi + edi*4]
lea edx, [eax + edx*2 - 0x210]
mov dword [ebp - 0x10], edx
jmp 0x41dd91
add edi, 0xffffffd0
mov dword [ebp - 0x10], edi
mov al, byte [ecx + 1]
inc ecx
cmp al, 0x30
mov esi, ecx
jl case.0x41d66f.44
nop
cmp al, 0x39
jg 0x41ddac
mov al, byte [ecx + 1]
inc ecx
cmp al, 0x30
jge 0x41dda0
cmp ecx, esi
je case.0x41d66f.44
mov eax, ecx
sub eax, esi
cmp eax, 2
jg case.0x41d66f.44
jne 0x41ddd6
movsx eax, byte [esi]
movsx edx, byte [esi + 1]
lea eax, [eax + eax*4]
lea edi, [edx + eax*2 - 0x210]
jmp 0x41dddc
movsx edi, byte [esi]
sub edi, 0x30
cmp byte [ecx], 0x3a
mov esi, ecx
jne 0x41dde6
lea esi, [ecx + 1]
mov cl, byte [esi]
cmp cl, 0x30
mov edx, esi
jl 0x41de2c
mov al, cl
cmp al, 0x39
jg 0x41ddfd
mov al, byte [edx + 1]
inc edx
cmp al, 0x30
jge 0x41ddf1
cmp edx, esi
je 0x41de2c
mov eax, edx
sub eax, esi
cmp eax, 2
jg case.0x41d66f.44
movsx eax, cl
jne 0x41de26
lea ecx, [eax + eax*4]
movsx eax, byte [esi + 1]
lea ecx, [eax + ecx*2 - 0x210]
mov dword [ebp - 0x28], ecx
jmp 0x41de2c
sub eax, 0x30
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x10], 0xc
jg 0x41de9d
mov al, byte [edx]
mov ecx, edx
test al, al
je 0x41de50
lea ebx, [ebx]
cmp al, 0x20
je 0x41de48
cmp al, 9
jne 0x41de50
mov al, byte [ecx + 1]
inc ecx
test al, al
jne 0x41de40
mov al, byte [ecx]
cmp al, 0x70
je 0x41de5a
cmp al, 0x50
jne 0x41de67
mov bl, byte [ecx + 1]
cmp bl, 0x6d
je 0x41de8b
cmp bl, 0x4d
je 0x41de8b
cmp dword [ebp - 0x10], 0xc
jne 0x41de9d
cmp al, 0x61
je 0x41de75
cmp al, 0x41
jne 0x41de9d
mov cl, byte [ecx + 1]
cmp cl, 0x6d
je 0x41de82
cmp cl, 0x4d
jne 0x41de9d
mov dword [ebp - 0x10], 0
jmp 0x41de9d
mov eax, 0xc
cmp dword [ebp - 0x10], eax
jne 0x41de9a
mov dword [ebp - 0x10], eax
jmp 0x41de9d
add dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x28]
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x30], ecx
mov esi, edx
jmp case.0x41d66f.44
cmp dl, 0x2f
je 0x41dec1
cmp dl, 0x2d
jne 0x41e0a8
mov bl, byte [ecx + 1]
cmp bl, 0x30
jl 0x41e0a8
cmp bl, 0x39
jg 0x41e0a8
cmp dword [ebp - 4], 0
jne case.0x41d66f.44
mov cl, byte [eax]
cmp cl, 0x30
lea ebx, [edi - 0x30]
jl 0x41defa
cmp cl, 0x39
jg 0x41defa
movsx ecx, cl
lea edx, [ebx + ebx*4]
lea ebx, [ecx + edx*2 - 0x30]
inc eax
mov cl, byte [eax]
cmp cl, 0x2f
je 0x41df0a
cmp cl, 0x2d
jne case.0x41d66f.44
mov cl, byte [eax + 1]
inc eax
cmp cl, 0x30
jl case.0x41d66f.44
cmp cl, 0x39
jg case.0x41d66f.44
movsx edi, cl
mov cl, byte [eax + 1]
inc eax
sub edi, 0x30
cmp cl, 0x30
jl 0x41df3f
cmp cl, 0x39
jg 0x41df3f
movsx ecx, cl
lea edx, [edi + edi*4]
lea edi, [ecx + edx*2 - 0x30]
inc eax
mov cl, byte [eax]
cmp cl, 0x2f
je 0x41df4f
cmp cl, 0x2d
jne case.0x41d66f.44
mov cl, byte [eax + 1]
inc eax
cmp cl, 0x30
jl case.0x41d66f.44
cmp cl, 0x39
jg case.0x41d66f.44
mov dl, byte [eax + 1]
movsx ecx, cl
inc eax
sub ecx, 0x30
cmp dl, 0x30
jl 0x41dfe1
cmp dl, 0x39
jg 0x41df84
movsx edx, dl
lea ecx, [ecx + ecx*4]
lea ecx, [edx + ecx*2 - 0x30]
inc eax
mov dl, byte [eax]
cmp dl, 0x30
jl 0x41dfe1
cmp dl, 0x39
jg 0x41dfd1
movsx edx, dl
lea ecx, [ecx + ecx*4]
inc eax
lea edx, [edx + ecx*2 - 0x30]
mov cl, byte [eax]
cmp cl, 0x30
jl case.0x41d66f.44
cmp cl, 0x39
jg case.0x41d66f.44
movsx ecx, cl
lea edx, [edx + edx*4]
inc eax
lea ecx, [ecx + edx*2 - 0x30]
mov dl, byte [eax]
cmp dl, 0x30
jl 0x41dfe1
cmp dl, 0x39
jg 0x41dfd1
movsx edx, dl
lea ecx, [ecx + ecx*4]
lea ecx, [edx + ecx*2 - 0x30]
inc eax
mov dl, byte [eax]
cmp dl, 0x30
jl 0x41dfe1
cmp dl, 0x39
jle case.0x41d66f.44
cmp dl, 0x41
jl 0x41dfef
cmp dl, 0x5a
jle case.0x41d66f.44
cmp dl, 0x61
jl 0x41dffd
cmp dl, 0x7a
jle case.0x41d66f.44
cmp ebx, 0x1f
jg 0x41e057
test ebx, ebx
je 0x41e057
cmp ebx, 0xc
jle 0x41e017
cmp edi, 0xc
jle 0x41e017
mov esi, eax
jmp case.0x41d66f.44
cmp ecx, 0x46
jge 0x41e024
add ecx, 0x7d0
jmp 0x41e02f
cmp ecx, 0x64
jge 0x41e02f
add ecx, 0x76c
cmp ebx, 0xc
mov dword [ebp - 0xc], ecx
jle 0x41e047
add edi, 7
mov dword [ebp - 0x18], ebx
mov dword [ebp - 4], edi
mov esi, eax
jmp case.0x41d66f.44
add ebx, 7
mov dword [ebp - 4], ebx
mov dword [ebp - 0x18], edi
mov esi, eax
jmp case.0x41d66f.44
cmp edi, 0xc
jg case.0x41d66f.44
cmp ecx, 0x1f
jg case.0x41d66f.44
cmp ebx, 0x46
mov dword [ebp - 0xc], ebx
jge 0x41e08a
add ebx, 0x7d0
add edi, 7
mov dword [ebp - 0xc], ebx
mov dword [ebp - 4], edi
mov dword [ebp - 0x18], ecx
mov esi, eax
jmp case.0x41d66f.44
cmp ebx, 0x64
jge 0x41e098
add ebx, 0x76c
mov dword [ebp - 0xc], ebx
add edi, 7
mov dword [ebp - 4], edi
mov dword [ebp - 0x18], ecx
mov esi, eax
jmp case.0x41d66f.44
cmp dl, 0x41
jl 0x41e0b6
cmp dl, 0x5a
jle case.0x41d66f.44
cmp dl, 0x61
jl 0x41e0c4
cmp dl, 0x7a
jle case.0x41d66f.44
sub ecx, esi
cmp ecx, 5
jne 0x41e108
cmp dword [ebp - 0xc], 0
jge case.0x41d66f.44
movsx edx, byte [eax]
lea ecx, [edi + edi*4]
lea eax, [edx + ecx*2]
movsx ecx, byte [esi + 2]
lea eax, [eax + eax*4]
lea eax, [ecx + eax*2]
lea edx, [eax + eax*4]
movsx eax, byte [esi + 3]
lea eax, [eax + edx*2]
movsx edx, byte [esi + 4]
lea ecx, [eax + eax*4]
lea eax, [edx + ecx*2 - 0x82350]
mov dword [ebp - 0xc], eax
jmp case.0x41d66f.44
cmp ecx, 4
jne 0x41e13d
cmp dword [ebp - 0xc], 0
jge case.0x41d66f.44
movsx edx, byte [eax]
lea ecx, [edi + edi*4]
lea eax, [edx + ecx*2]
movsx ecx, byte [esi + 2]
lea eax, [eax + eax*4]
lea eax, [ecx + eax*2]
lea edx, [eax + eax*4]
movsx eax, byte [esi + 3]
lea ecx, [eax + edx*2 - 0xd050]
mov dword [ebp - 0xc], ecx
jmp case.0x41d66f.44
cmp ecx, 2
jne 0x41e183
cmp dword [ebp - 0x18], 0
movsx eax, byte [eax]
lea edx, [edi + edi*4]
lea eax, [eax + edx*2 - 0x210]
jge 0x41e15f
cmp eax, 0x20
jge 0x41e15f
mov dword [ebp - 0x18], eax
jmp case.0x41d66f.44
cmp dword [ebp - 0xc], 0
jge case.0x41d66f.44
cmp eax, 0x46
jge 0x41e174
add eax, 0x7d0
mov dword [ebp - 0xc], eax
jmp case.0x41d66f.44
cmp eax, 0x64
jge 0x41e100
add eax, 0x76c
mov dword [ebp - 0xc], eax
jmp case.0x41d66f.44
cmp ecx, 1
jne case.0x41d66f.44
cmp dword [ebp - 0x18], 0
jge case.0x41d66f.44
add edi, 0xffffffd0
mov dword [ebp - 0x18], edi
mov al, byte [esi]
test al, al
je 0x41e1d6
lea ebx, [ebx]
cmp al, 0x20
je 0x41e1d6
cmp al, 9
je 0x41e1d6
cmp al, 0x2c
je 0x41e1d6
cmp al, 0x3b
je 0x41e1d6
cmp al, 0x2d
je 0x41e1d6
cmp al, 0x2b
je 0x41e1d6
cmp al, 0x2f
je 0x41e1d6
cmp al, 0x28
je 0x41e1d6
cmp al, 0x29
je 0x41e1d6
cmp al, 0x5b
je 0x41e1d6
cmp al, 0x5d
je 0x41e1d6
mov al, byte [esi + 1]
inc esi
test al, al
jne 0x41e1a0
jmp 0x41e20c
mov al, byte [esi]
test al, al
je 0x41e20c
lea esp, [esp]
cmp al, 0x20
je 0x41e204
cmp al, 9
je 0x41e204
cmp al, 0x2c
je 0x41e204
cmp al, 0x3b
je 0x41e204
cmp al, 0x2f
je 0x41e204
cmp al, 0x28
je 0x41e204
cmp al, 0x29
je 0x41e204
cmp al, 0x5b
je 0x41e204
cmp al, 0x5d
jne 0x41e20c
mov al, byte [esi + 1]
inc esi
test al, al
jne 0x41e1e0
cmp byte [esi], 0x2d
jne 0x41e23b
cmp esi, dword [ebp + 8]
jbe 0x41e22d
movzx ecx, byte [esi - 1]
push ecx
call fcn.0045920f
add esp, 4
test eax, eax
je 0x41e22d
cmp dword [ebp - 0xc], 0
jl 0x41e238
mov al, byte [esi + 1]
cmp al, 0x30
jl 0x41e238
cmp al, 0x39
jle 0x41e23b
inc esi
jmp 0x41e1d6
cmp byte [esi], 0
jne 0x41d641
mov eax, dword [ebp - 8]
mov esi, dword [ebp - 0x20]
test eax, eax
je case.default.0x41e267
cmp esi, 0xffffffff
jne case.default.0x41e267
add eax, 0xffffffec
cmp eax, 0xe
ja case.default.0x41e267
jmp dword [eax*4 + 0x41e51c]
mov esi, 0xfffffe20
jmp case.default.0x41e267
mov esi, 0xfffffe20
mov dword [ebp - 0x1c], 0x3c
jmp case.default.0x41e267
mov esi, 0xfffffe5c
jmp case.default.0x41e267
mov esi, 0xfffffe5c
mov dword [ebp - 0x1c], 0x3c
jmp case.default.0x41e267
mov esi, 0xfffffe98
jmp case.default.0x41e267
mov esi, 0xfffffe98
mov dword [ebp - 0x1c], 0x3c
jmp case.default.0x41e267
mov esi, 0xfffffed4
jmp case.default.0x41e267
mov esi, 0xfffffed4
mov dword [ebp - 0x1c], 0x3c
jmp case.default.0x41e267
mov esi, 0xffffff10
jmp case.default.0x41e267
mov esi, 0xffffff2e
jmp case.default.0x41e267
xor esi, esi
jmp case.default.0x41e267
xor esi, esi
mov dword [ebp - 0x1c], 0x3c
jmp case.default.0x41e267
mov esi, 0x3c
jmp case.default.0x41e267
mov esi, 0x78
jmp case.default.0x41e267
mov esi, 0x21c
mov ecx, dword [ebp - 4]
test ecx, ecx
je 0x41d637
mov edx, dword [ebp - 0x18]
cmp edx, 0xffffffff
je 0x41d637
mov edi, dword [ebp - 0xc]
cmp edi, 0xffffffff
je 0x41d637
cmp edi, 0x7fff
jg 0x41d637
xor eax, eax
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x30]
cmp eax, 0xffffffff
je 0x41e34f
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0x24]
cmp eax, 0xffffffff
je 0x41e35a
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x2c]
cmp eax, 0xffffffff
je 0x41e365
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0x14]
add ecx, 0xfffffff8
mov dword [ebp - 0x50], edx
mov dword [ebp - 0x4c], ecx
mov word [ebp - 0x48], di
test eax, eax
je 0x41e37e
dec al
mov byte [ebp - 0x46], al
lea eax, [ebp - 0x60]
call fcn.0041d300
cmp esi, 0xffffffff
jne 0x41e43e
mov ax, word [ebp - 0x48]
mov edx, 0x7b2
cmp ax, dx
jl 0x41e403
mov edx, dword [ebp - 0x58]
mov ecx, dword [ebp - 0x5c]
mov dword [ebp - 0x80], edx
mov edx, dword [ebp - 0x50]
mov dword [ebp - 0x78], edx
mov dword [ebp - 0x84], ecx
mov ecx, dword [ebp - 0x54]
movsx edx, ax
mov dword [ebp - 0x7c], ecx
mov ecx, dword [ebp - 0x4c]
lea eax, [ebp - 0x84]
sub edx, 0x76c
push eax
mov dword [ebp - 0x74], ecx
mov dword [ebp - 0x70], edx
mov dword [ebp - 0x64], esi
call fcn.0045bb85
mov ecx, eax
and ecx, edx
add esp, 4
cmp ecx, esi
je 0x41e403
push 0
push 0xf4240
push edx
push eax
call fcn.0046bb00
mov ecx, dword [ebp + 0xc]
mov dword [ecx], eax
mov dword [ecx + 4], edx
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
lea edx, [ebp - 0x38]
push edx
lea eax, [ebp - 0x84]
push eax
mov dword [ebp - 0x38], 0x15180
mov dword [ebp - 0x34], 0
call fcn.004594c1
mov eax, dword [ebp - 0x78]
mov edx, dword [ebp - 0x7c]
lea ecx, [eax + eax*2 - 6]
lea eax, [edx + ecx*8]
mov edx, dword [ebp - 0x80]
mov ecx, eax
shl ecx, 4
add esp, 8
sub ecx, eax
lea esi, [edx + ecx*4]
mov eax, esi
shl eax, 4
sub eax, esi
add eax, eax
add eax, eax
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x1c]
mov ecx, eax
shl ecx, 4
sub ecx, eax
add ecx, ecx
add ecx, ecx
lea eax, [ebp - 0x60]
mov dword [ebp - 0x3c], ecx
call fcn.0041d0b0
mov ecx, dword [ebp + 0xc]
mov dword [ecx], eax
mov dword [ecx + 4], edx
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret