Function at 0x41d5c0
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 0x41e446
cmp byte [esi], al
jne 0x41d61a
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 0x41d607
mov al, byte [esi]
movsx edi, al
lea ecx, [edi - 0x2b]
cmp ecx, 0x4c
ja case.0x41d63f.44
movzx ecx, byte [ecx + 0x41e49c]
jmp dword [ecx*4 + 0x41e450]
mov ecx, dword [ebp - 4]
test ecx, ecx
jne 0x41d66f
mov al, byte [esi + 1]
cmp al, 0x70
je 0x41d658
cmp al, 0x50
jne 0x41d66f
mov al, byte [esi + 2]
cmp al, 0x72
je 0x41d663
cmp al, 0x52
jne 0x41d66f
mov dword [ebp - 4], 0xb
jmp case.0x41d63f.44
test edx, edx
jne 0x41d695
mov al, byte [esi + 1]
cmp al, 0x73
je 0x41d67e
cmp al, 0x53
jne 0x41d695
mov al, byte [esi + 2]
cmp al, 0x74
je 0x41d689
cmp al, 0x54
jne 0x41d695
mov dword [ebp - 8], 0x1c
jmp case.0x41d63f.44
test ecx, ecx
jne case.0x41d63f.44
mov al, byte [esi + 1]
cmp al, 0x75
je 0x41d6ac
cmp al, 0x55
jne case.0x41d63f.44
mov al, byte [esi + 2]
cmp al, 0x67
je 0x41d6bb
cmp al, 0x47
jne case.0x41d63f.44
mov dword [ebp - 4], 0xf
jmp case.0x41d63f.44
test edx, edx
jne case.0x41d63f.44
mov al, byte [esi + 1]
cmp al, 0x73
je 0x41d6de
cmp al, 0x53
jne case.0x41d63f.44
mov al, byte [esi + 2]
cmp al, 0x74
je 0x41d6ed
cmp al, 0x54
jne case.0x41d63f.44
mov dword [ebp - 8], 0x1f
jmp case.0x41d63f.44
test edx, edx
jne case.0x41d63f.44
mov al, byte [esi + 1]
cmp al, 0x64
je 0x41d70c
cmp al, 0x44
jne 0x41d725
mov cl, byte [esi + 2]
cmp cl, 0x74
je 0x41d719
cmp cl, 0x54
jne 0x41d725
mov dword [ebp - 8], 0x19
jmp case.0x41d63f.44
cmp al, 0x73
je 0x41d731
cmp al, 0x53
jne case.0x41d63f.44
mov al, byte [esi + 2]
cmp al, 0x74
je 0x41d740
cmp al, 0x54
jne case.0x41d63f.44
mov dword [ebp - 8], 0x18
jmp case.0x41d63f.44
cmp dword [ebp - 4], 0
jne case.0x41d63f.44
mov al, byte [esi + 1]
cmp al, 0x65
je 0x41d765
cmp al, 0x45
jne case.0x41d63f.44
mov al, byte [esi + 2]
cmp al, 0x63
je 0x41d774
cmp al, 0x43
jne case.0x41d63f.44
mov dword [ebp - 4], 0x13
jmp case.0x41d63f.44
test edx, edx
jne case.0x41d63f.44
mov al, byte [esi + 1]
cmp al, 0x64
je 0x41d793
cmp al, 0x44
jne 0x41d7ac
mov cl, byte [esi + 2]
cmp cl, 0x74
je 0x41d7a0
cmp cl, 0x54
jne 0x41d7ac
mov dword [ebp - 8], 0x1b
jmp case.0x41d63f.44
cmp al, 0x65
je 0x41d7b4
cmp al, 0x45
jne 0x41d7cd
mov cl, byte [esi + 2]
cmp cl, 0x74
je 0x41d7c1
cmp cl, 0x54
jne 0x41d7cd
mov dword [ebp - 8], 0x21
jmp case.0x41d63f.44
cmp al, 0x73
je 0x41d7d9
cmp al, 0x53
jne case.0x41d63f.44
mov al, byte [esi + 2]
cmp al, 0x74
je 0x41d7e8
cmp al, 0x54
jne case.0x41d63f.44
mov dword [ebp - 8], 0x1a
jmp case.0x41d63f.44
cmp dword [ebp - 4], 0
jne 0x41d81c
mov al, byte [esi + 1]
cmp al, 0x65
je 0x41d805
cmp al, 0x45
jne 0x41d81c
mov al, byte [esi + 2]
cmp al, 0x62
je 0x41d810
cmp al, 0x42
jne 0x41d81c
mov dword [ebp - 4], 9
jmp case.0x41d63f.44
test ebx, ebx
jne case.0x41d63f.44
mov al, byte [esi + 1]
cmp al, 0x72
je 0x41d833
cmp al, 0x52
jne case.0x41d63f.44
mov al, byte [esi + 2]
cmp al, 0x69
je 0x41d842
cmp al, 0x49
jne case.0x41d63f.44
mov dword [ebp - 0x14], 6
jmp case.0x41d63f.44
test edx, edx
jne case.0x41d63f.44
mov al, byte [esi + 1]
cmp al, 0x6d
je 0x41d865
cmp al, 0x4d
jne case.0x41d63f.44
mov al, byte [esi + 2]
cmp al, 0x74
je 0x41d874
cmp al, 0x54
jne case.0x41d63f.44
mov dword [ebp - 8], 0x1e
jmp case.0x41d63f.44
mov ecx, dword [ebp - 4]
test ecx, ecx
jne 0x41d8a9
mov al, byte [esi + 1]
cmp al, 0x61
je 0x41d892
cmp al, 0x41
jne 0x41d8a9
mov al, byte [esi + 2]
cmp al, 0x6e
je 0x41d89d
cmp al, 0x4e
jne 0x41d8a9
mov dword [ebp - 4], 8
jmp case.0x41d63f.44
test edx, edx
jne 0x41d8cf
mov al, byte [esi + 1]
cmp al, 0x73
je 0x41d8b8
cmp al, 0x53
jne 0x41d8cf
mov al, byte [esi + 2]
cmp al, 0x74
je 0x41d8c3
cmp al, 0x54
jne 0x41d8cf
mov dword [ebp - 8], 0x22
jmp case.0x41d63f.44
test ecx, ecx
jne case.0x41d63f.44
mov al, byte [esi + 1]
cmp al, 0x75
je 0x41d8e2
cmp al, 0x55
jne 0x41d8fb
mov cl, byte [esi + 2]
cmp cl, 0x6c
je 0x41d8ef
cmp cl, 0x4c
jne 0x41d8fb
mov dword [ebp - 4], 0xe
jmp case.0x41d63f.44
cmp al, 0x75
je 0x41d907
cmp al, 0x55
jne case.0x41d63f.44
mov al, byte [esi + 2]
cmp al, 0x6e
je 0x41d916
cmp al, 0x4e
jne case.0x41d63f.44
mov dword [ebp - 4], 0xd
jmp case.0x41d63f.44
cmp dword [ebp - 4], 0
jne 0x41d96b
mov al, byte [esi + 1]
cmp al, 0x61
je 0x41d933
cmp al, 0x41
jne 0x41d94c
mov cl, byte [esi + 2]
cmp cl, 0x72
je 0x41d940
cmp cl, 0x52
jne 0x41d94c
mov dword [ebp - 4], 0xa
jmp case.0x41d63f.44
cmp al, 0x61
je 0x41d954
cmp al, 0x41
jne 0x41d96b
mov al, byte [esi + 2]
cmp al, 0x79
je 0x41d95f
cmp al, 0x59
jne 0x41d96b
mov dword [ebp - 4], 0xc
jmp case.0x41d63f.44
test edx, edx
jne 0x41d9b2
mov al, byte [esi + 1]
cmp al, 0x64
je 0x41d97a
cmp al, 0x44
jne 0x41d993
mov cl, byte [esi + 2]
cmp cl, 0x74
je 0x41d987
cmp cl, 0x54
jne 0x41d993
mov dword [ebp - 8], 0x17
jmp case.0x41d63f.44
cmp al, 0x65
je 0x41d99b
cmp al, 0x45
jne 0x41d9b2
mov al, byte [esi + 2]
cmp al, 0x74
je 0x41d9a6
cmp al, 0x54
jne 0x41d9b2
mov dword [ebp - 8], 0x20
jmp case.0x41d63f.44
test ebx, ebx
jne 0x41d9d8
mov al, byte [esi + 1]
cmp al, 0x6f
je 0x41d9c1
cmp al, 0x4f
jne 0x41d9d8
mov al, byte [esi + 2]
cmp al, 0x6e
je 0x41d9cc
cmp al, 0x4e
jne 0x41d9d8
mov dword [ebp - 0x14], 2
jmp case.0x41d63f.44
test edx, edx
jne case.0x41d63f.44
mov al, byte [esi + 1]
cmp al, 0x73
je 0x41d9ef
cmp al, 0x53
jne case.0x41d63f.44
mov al, byte [esi + 2]
cmp al, 0x74
je 0x41d9fe
cmp al, 0x54
jne case.0x41d63f.44
mov dword [ebp - 8], 0x16
jmp case.0x41d63f.44
cmp dword [ebp - 4], 0
jne 0x41da32
mov al, byte [esi + 1]
cmp al, 0x6f
je 0x41da1b
cmp al, 0x4f
jne 0x41da32
mov al, byte [esi + 2]
cmp al, 0x76
je 0x41da26
cmp al, 0x56
jne 0x41da32
mov dword [ebp - 4], 0x12
jmp case.0x41d63f.44
test edx, edx
jne case.0x41d63f.44
mov al, byte [esi + 1]
cmp al, 0x73
je 0x41da49
cmp al, 0x53
jne case.0x41d63f.44
mov al, byte [esi + 2]
cmp al, 0x74
je 0x41da58
cmp al, 0x54
jne case.0x41d63f.44
mov dword [ebp - 8], 0x1d
jmp case.0x41d63f.44
cmp dword [ebp - 4], 0
jne case.0x41d63f.44
mov al, byte [esi + 1]
cmp al, 0x63
je 0x41da7d
cmp al, 0x43
jne case.0x41d63f.44
mov al, byte [esi + 2]
cmp al, 0x74
je 0x41da8c
cmp al, 0x54
jne case.0x41d63f.44
mov dword [ebp - 4], 0x11
jmp case.0x41d63f.44
test edx, edx
jne case.0x41d63f.44
mov al, byte [esi + 1]
cmp al, 0x64
je 0x41daab
cmp al, 0x44
jne 0x41dac4
mov cl, byte [esi + 2]
cmp cl, 0x74
je 0x41dab8
cmp cl, 0x54
jne 0x41dac4
mov dword [ebp - 8], 0x15
jmp case.0x41d63f.44
cmp al, 0x73
je 0x41dad0
cmp al, 0x53
jne case.0x41d63f.44
mov al, byte [esi + 2]
cmp al, 0x74
je 0x41dadf
cmp al, 0x54
jne case.0x41d63f.44
mov dword [ebp - 8], 0x14
jmp case.0x41d63f.44
test ebx, ebx
jne 0x41db11
mov al, byte [esi + 1]
cmp al, 0x61
je 0x41dafa
cmp al, 0x41
jne 0x41db11
mov al, byte [esi + 2]
cmp al, 0x74
je 0x41db05
cmp al, 0x54
jne 0x41db11
mov dword [ebp - 0x14], 7
jmp case.0x41d63f.44
cmp dword [ebp - 4], 0
jne 0x41db39
mov al, byte [esi + 1]
cmp al, 0x65
je 0x41db22
cmp al, 0x45
jne 0x41db39
mov al, byte [esi + 2]
cmp al, 0x70
je 0x41db2d
cmp al, 0x50
jne 0x41db39
mov dword [ebp - 4], 0x10
jmp case.0x41d63f.44
test ebx, ebx
jne case.0x41d63f.44
mov al, byte [esi + 1]
cmp al, 0x75
je 0x41db50
cmp al, 0x55
jne case.0x41d63f.44
mov al, byte [esi + 2]
cmp al, 0x6e
je 0x41db5f
cmp al, 0x4e
jne case.0x41d63f.44
mov dword [ebp - 0x14], 1
jmp case.0x41d63f.44
test ebx, ebx
jne case.0x41d63f.44
mov al, byte [esi + 1]
cmp al, 0x68
je 0x41db7e
cmp al, 0x48
jne 0x41db97
mov cl, byte [esi + 2]
cmp cl, 0x75
je 0x41db8b
cmp cl, 0x55
jne 0x41db97
mov dword [ebp - 0x14], 5
jmp case.0x41d63f.44
cmp al, 0x75
je 0x41dba3
cmp al, 0x55
jne case.0x41d63f.44
mov al, byte [esi + 2]
cmp al, 0x65
je 0x41dbb2
cmp al, 0x45
jne case.0x41d63f.44
mov dword [ebp - 0x14], 3
jmp case.0x41d63f.44
test edx, edx
jne case.0x41d63f.44
mov al, byte [esi + 1]
cmp al, 0x74
je 0x41dbd5
cmp al, 0x54
jne case.0x41d63f.44
mov al, byte [esi + 2]
cmp al, 0x41
jl 0x41dbe4
cmp al, 0x5a
jle case.0x41d63f.44
cmp al, 0x61
jl 0x41dbf0
cmp al, 0x7a
jle case.0x41d63f.44
mov dword [ebp - 8], 0x1e
jmp case.0x41d63f.44
test ebx, ebx
jne case.0x41d63f.44
mov al, byte [esi + 1]
cmp al, 0x65
je 0x41dc13
cmp al, 0x45
jne case.0x41d63f.44
mov al, byte [esi + 2]
cmp al, 0x64
je 0x41dc22
cmp al, 0x44
jne case.0x41d63f.44
mov dword [ebp - 0x14], 4
jmp case.0x41d63f.44
cmp dword [ebp - 0x20], 0xffffffff
je 0x41dc3a
inc esi
jmp case.0x41d63f.44
test edx, edx
je 0x41dc49
cmp edx, 0x1e
je 0x41dc49
inc esi
jmp case.0x41d63f.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.0x41d63f.44
mov cl, dl
cmp cl, 0x39
jg 0x41dc74
mov cl, byte [eax + 1]
inc eax
cmp cl, 0x30
jge 0x41dc66
cmp esi, eax
je case.0x41d63f.44
sub eax, esi
cmp eax, 4
jne 0x41dcba
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.0x41d63f.44
cmp eax, 2
jne 0x41dcd2
movsx ecx, byte [esi + 1]
movsx eax, dl
lea eax, [eax + eax*4]
lea ecx, [ecx + eax*2 - 0x210]
jmp 0x41dce1
cmp eax, 1
jne case.0x41d63f.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.0x41d63f.44
lea eax, [esi + 1]
mov ecx, eax
mov dl, byte [ecx]
cmp dl, 0x30
mov dword [ebp - 0x28], 0xffffffff
jl 0x41dd1f
cmp dl, 0x39
jg 0x41dd1f
mov dl, byte [ecx + 1]
inc ecx
cmp dl, 0x30
jge 0x41dd11
mov dl, byte [ecx]
cmp dl, 0x3a
jne 0x41de83
cmp dword [ebp - 0x2c], 0
jl 0x41dd3a
cmp dword [ebp - 0x24], 0
jge case.0x41d63f.44
mov edx, ecx
sub edx, esi
cmp edx, 2
jg case.0x41d63f.44
jne 0x41dd5b
movsx eax, byte [eax]
lea edx, [edi + edi*4]
lea edx, [eax + edx*2 - 0x210]
mov dword [ebp - 0x10], edx
jmp 0x41dd61
add edi, 0xffffffd0
mov dword [ebp - 0x10], edi
mov al, byte [ecx + 1]
inc ecx
cmp al, 0x30
mov esi, ecx
jl case.0x41d63f.44
nop
cmp al, 0x39
jg 0x41dd7c
mov al, byte [ecx + 1]
inc ecx
cmp al, 0x30
jge 0x41dd70
cmp ecx, esi
je case.0x41d63f.44
mov eax, ecx
sub eax, esi
cmp eax, 2
jg case.0x41d63f.44
jne 0x41dda6
movsx eax, byte [esi]
movsx edx, byte [esi + 1]
lea eax, [eax + eax*4]
lea edi, [edx + eax*2 - 0x210]
jmp 0x41ddac
movsx edi, byte [esi]
sub edi, 0x30
cmp byte [ecx], 0x3a
mov esi, ecx
jne 0x41ddb6
lea esi, [ecx + 1]
mov cl, byte [esi]
cmp cl, 0x30
mov edx, esi
jl 0x41ddfc
mov al, cl
cmp al, 0x39
jg 0x41ddcd
mov al, byte [edx + 1]
inc edx
cmp al, 0x30
jge 0x41ddc1
cmp edx, esi
je 0x41ddfc
mov eax, edx
sub eax, esi
cmp eax, 2
jg case.0x41d63f.44
movsx eax, cl
jne 0x41ddf6
lea ecx, [eax + eax*4]
movsx eax, byte [esi + 1]
lea ecx, [eax + ecx*2 - 0x210]
mov dword [ebp - 0x28], ecx
jmp 0x41ddfc
sub eax, 0x30
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x10], 0xc
jg 0x41de6d
mov al, byte [edx]
mov ecx, edx
test al, al
je 0x41de20
lea ebx, [ebx]
cmp al, 0x20
je 0x41de18
cmp al, 9
jne 0x41de20
mov al, byte [ecx + 1]
inc ecx
test al, al
jne 0x41de10
mov al, byte [ecx]
cmp al, 0x70
je 0x41de2a
cmp al, 0x50
jne 0x41de37
mov bl, byte [ecx + 1]
cmp bl, 0x6d
je 0x41de5b
cmp bl, 0x4d
je 0x41de5b
cmp dword [ebp - 0x10], 0xc
jne 0x41de6d
cmp al, 0x61
je 0x41de45
cmp al, 0x41
jne 0x41de6d
mov cl, byte [ecx + 1]
cmp cl, 0x6d
je 0x41de52
cmp cl, 0x4d
jne 0x41de6d
mov dword [ebp - 0x10], 0
jmp 0x41de6d
mov eax, 0xc
cmp dword [ebp - 0x10], eax
jne 0x41de6a
mov dword [ebp - 0x10], eax
jmp 0x41de6d
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.0x41d63f.44
cmp dl, 0x2f
je 0x41de91
cmp dl, 0x2d
jne 0x41e078
mov bl, byte [ecx + 1]
cmp bl, 0x30
jl 0x41e078
cmp bl, 0x39
jg 0x41e078
cmp dword [ebp - 4], 0
jne case.0x41d63f.44
mov cl, byte [eax]
cmp cl, 0x30
lea ebx, [edi - 0x30]
jl 0x41deca
cmp cl, 0x39
jg 0x41deca
movsx ecx, cl
lea edx, [ebx + ebx*4]
lea ebx, [ecx + edx*2 - 0x30]
inc eax
mov cl, byte [eax]
cmp cl, 0x2f
je 0x41deda
cmp cl, 0x2d
jne case.0x41d63f.44
mov cl, byte [eax + 1]
inc eax
cmp cl, 0x30
jl case.0x41d63f.44
cmp cl, 0x39
jg case.0x41d63f.44
movsx edi, cl
mov cl, byte [eax + 1]
inc eax
sub edi, 0x30
cmp cl, 0x30
jl 0x41df0f
cmp cl, 0x39
jg 0x41df0f
movsx ecx, cl
lea edx, [edi + edi*4]
lea edi, [ecx + edx*2 - 0x30]
inc eax
mov cl, byte [eax]
cmp cl, 0x2f
je 0x41df1f
cmp cl, 0x2d
jne case.0x41d63f.44
mov cl, byte [eax + 1]
inc eax
cmp cl, 0x30
jl case.0x41d63f.44
cmp cl, 0x39
jg case.0x41d63f.44
mov dl, byte [eax + 1]
movsx ecx, cl
inc eax
sub ecx, 0x30
cmp dl, 0x30
jl 0x41dfb1
cmp dl, 0x39
jg 0x41df54
movsx edx, dl
lea ecx, [ecx + ecx*4]
lea ecx, [edx + ecx*2 - 0x30]
inc eax
mov dl, byte [eax]
cmp dl, 0x30
jl 0x41dfb1
cmp dl, 0x39
jg 0x41dfa1
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.0x41d63f.44
cmp cl, 0x39
jg case.0x41d63f.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 0x41dfb1
cmp dl, 0x39
jg 0x41dfa1
movsx edx, dl
lea ecx, [ecx + ecx*4]
lea ecx, [edx + ecx*2 - 0x30]
inc eax
mov dl, byte [eax]
cmp dl, 0x30
jl 0x41dfb1
cmp dl, 0x39
jle case.0x41d63f.44
cmp dl, 0x41
jl 0x41dfbf
cmp dl, 0x5a
jle case.0x41d63f.44
cmp dl, 0x61
jl 0x41dfcd
cmp dl, 0x7a
jle case.0x41d63f.44
cmp ebx, 0x1f
jg 0x41e027
test ebx, ebx
je 0x41e027
cmp ebx, 0xc
jle 0x41dfe7
cmp edi, 0xc
jle 0x41dfe7
mov esi, eax
jmp case.0x41d63f.44
cmp ecx, 0x46
jge 0x41dff4
add ecx, 0x7d0
jmp 0x41dfff
cmp ecx, 0x64
jge 0x41dfff
add ecx, 0x76c
cmp ebx, 0xc
mov dword [ebp - 0xc], ecx
jle 0x41e017
add edi, 7
mov dword [ebp - 0x18], ebx
mov dword [ebp - 4], edi
mov esi, eax
jmp case.0x41d63f.44
add ebx, 7
mov dword [ebp - 4], ebx
mov dword [ebp - 0x18], edi
mov esi, eax
jmp case.0x41d63f.44
cmp edi, 0xc
jg case.0x41d63f.44
cmp ecx, 0x1f
jg case.0x41d63f.44
cmp ebx, 0x46
mov dword [ebp - 0xc], ebx
jge 0x41e05a
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.0x41d63f.44
cmp ebx, 0x64
jge 0x41e068
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.0x41d63f.44
cmp dl, 0x41
jl 0x41e086
cmp dl, 0x5a
jle case.0x41d63f.44
cmp dl, 0x61
jl 0x41e094
cmp dl, 0x7a
jle case.0x41d63f.44
sub ecx, esi
cmp ecx, 5
jne 0x41e0d8
cmp dword [ebp - 0xc], 0
jge case.0x41d63f.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.0x41d63f.44
cmp ecx, 4
jne 0x41e10d
cmp dword [ebp - 0xc], 0
jge case.0x41d63f.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.0x41d63f.44
cmp ecx, 2
jne 0x41e153
cmp dword [ebp - 0x18], 0
movsx eax, byte [eax]
lea edx, [edi + edi*4]
lea eax, [eax + edx*2 - 0x210]
jge 0x41e12f
cmp eax, 0x20
jge 0x41e12f
mov dword [ebp - 0x18], eax
jmp case.0x41d63f.44
cmp dword [ebp - 0xc], 0
jge case.0x41d63f.44
cmp eax, 0x46
jge 0x41e144
add eax, 0x7d0
mov dword [ebp - 0xc], eax
jmp case.0x41d63f.44
cmp eax, 0x64
jge 0x41e0d0
add eax, 0x76c
mov dword [ebp - 0xc], eax
jmp case.0x41d63f.44
cmp ecx, 1
jne case.0x41d63f.44
cmp dword [ebp - 0x18], 0
jge case.0x41d63f.44
add edi, 0xffffffd0
mov dword [ebp - 0x18], edi
mov al, byte [esi]
test al, al
je 0x41e1a6
lea ebx, [ebx]
cmp al, 0x20
je 0x41e1a6
cmp al, 9
je 0x41e1a6
cmp al, 0x2c
je 0x41e1a6
cmp al, 0x3b
je 0x41e1a6
cmp al, 0x2d
je 0x41e1a6
cmp al, 0x2b
je 0x41e1a6
cmp al, 0x2f
je 0x41e1a6
cmp al, 0x28
je 0x41e1a6
cmp al, 0x29
je 0x41e1a6
cmp al, 0x5b
je 0x41e1a6
cmp al, 0x5d
je 0x41e1a6
mov al, byte [esi + 1]
inc esi
test al, al
jne 0x41e170
jmp 0x41e1dc
mov al, byte [esi]
test al, al
je 0x41e1dc
lea esp, [esp]
cmp al, 0x20
je 0x41e1d4
cmp al, 9
je 0x41e1d4
cmp al, 0x2c
je 0x41e1d4
cmp al, 0x3b
je 0x41e1d4
cmp al, 0x2f
je 0x41e1d4
cmp al, 0x28
je 0x41e1d4
cmp al, 0x29
je 0x41e1d4
cmp al, 0x5b
je 0x41e1d4
cmp al, 0x5d
jne 0x41e1dc
mov al, byte [esi + 1]
inc esi
test al, al
jne 0x41e1b0
cmp byte [esi], 0x2d
jne 0x41e20b
cmp esi, dword [ebp + 8]
jbe 0x41e1fd
movzx ecx, byte [esi - 1]
push ecx
call fcn.0045a46f
add esp, 4
test eax, eax
je 0x41e1fd
cmp dword [ebp - 0xc], 0
jl 0x41e208
mov al, byte [esi + 1]
cmp al, 0x30
jl 0x41e208
cmp al, 0x39
jle 0x41e20b
inc esi
jmp 0x41e1a6
cmp byte [esi], 0
jne 0x41d611
mov eax, dword [ebp - 8]
mov esi, dword [ebp - 0x20]
test eax, eax
je case.default.0x41e237
cmp esi, 0xffffffff
jne case.default.0x41e237
add eax, 0xffffffec
cmp eax, 0xe
ja case.default.0x41e237
jmp dword [eax*4 + 0x41e4ec]
mov esi, 0xfffffe20
jmp case.default.0x41e237
mov esi, 0xfffffe20
mov dword [ebp - 0x1c], 0x3c
jmp case.default.0x41e237
mov esi, 0xfffffe5c
jmp case.default.0x41e237
mov esi, 0xfffffe5c
mov dword [ebp - 0x1c], 0x3c
jmp case.default.0x41e237
mov esi, 0xfffffe98
jmp case.default.0x41e237
mov esi, 0xfffffe98
mov dword [ebp - 0x1c], 0x3c
jmp case.default.0x41e237
mov esi, 0xfffffed4
jmp case.default.0x41e237
mov esi, 0xfffffed4
mov dword [ebp - 0x1c], 0x3c
jmp case.default.0x41e237
mov esi, 0xffffff10
jmp case.default.0x41e237
mov esi, 0xffffff2e
jmp case.default.0x41e237
xor esi, esi
jmp case.default.0x41e237
xor esi, esi
mov dword [ebp - 0x1c], 0x3c
jmp case.default.0x41e237
mov esi, 0x3c
jmp case.default.0x41e237
mov esi, 0x78
jmp case.default.0x41e237
mov esi, 0x21c
mov ecx, dword [ebp - 4]
test ecx, ecx
je 0x41d607
mov edx, dword [ebp - 0x18]
cmp edx, 0xffffffff
je 0x41d607
mov edi, dword [ebp - 0xc]
cmp edi, 0xffffffff
je 0x41d607
cmp edi, 0x7fff
jg 0x41d607
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 0x41e31f
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0x24]
cmp eax, 0xffffffff
je 0x41e32a
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x2c]
cmp eax, 0xffffffff
je 0x41e335
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 0x41e34e
dec al
mov byte [ebp - 0x46], al
lea eax, [ebp - 0x60]
call fcn.0041d2d0
cmp esi, 0xffffffff
jne 0x41e40e
mov ax, word [ebp - 0x48]
mov edx, 0x7b2
cmp ax, dx
jl 0x41e3d3
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.0045cebd
mov ecx, eax
and ecx, edx
add esp, 4
cmp ecx, esi
je 0x41e3d3
push 0
push 0xf4240
push edx
push eax
call fcn.0046cd60
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.0045a721
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.0041d080
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