Function at 0x601c0c80
Capabilities:
Parse pe header

Disassembly:
sub esp, 0x74
push ebx
push ebp
push esi
mov esi, dword [esp + 0x84]
xor ebp, ebp
or eax, 0xffffffff
cmp esi, ebp
push edi
mov dword [esp + 0x1c], ebp
mov dword [esp + 0x14], ebp
mov dword [esp + 0x10], ebp
mov dword [esp + 0x24], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x18], eax
mov dword [esp + 0x30], eax
mov dword [esp + 0x2c], eax
mov dword [esp + 0x34], eax
je 0x601c0ccc
cmp dword [esp + 0x90], ebp
je 0x601c0ccc
cmp byte [esi], 0
jne 0x601c0cd8
or eax, 0xffffffff
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x74
ret
mov ebp, dword [esp + 0x1c]
mov al, byte [esi]
movsx edx, al
lea edi, [edx - 0x2b]
cmp edi, 0x4c
ja case.0x601c0cf1.61
xor ecx, ecx
mov cl, byte [edi + 0x601c1b10]
jmp dword [ecx*4 + 0x601c1ac4]
mov ecx, dword [esp + 0x14]
test ecx, ecx
jne 0x601c0d23
mov al, byte [esi + 1]
cmp al, 0x70
je 0x601c0d0b
cmp al, 0x50
jne 0x601c0d23
mov al, byte [esi + 2]
cmp al, 0x72
je 0x601c0d16
cmp al, 0x52
jne 0x601c0d23
mov dword [esp + 0x14], 0xb
jmp case.0x601c0cf1.61
mov eax, dword [esp + 0x10]
test eax, eax
jne 0x601c0d49
cmp byte [esi + 1], 0x73
jne 0x601c0d49
mov al, byte [esi + 2]
cmp al, 0x74
je 0x601c0d3c
cmp al, 0x54
jne 0x601c0d49
mov dword [esp + 0x10], 0x1c
jmp case.0x601c0cf1.61
test ecx, ecx
jne case.0x601c0cf1.61
mov al, byte [esi + 1]
cmp al, 0x75
je 0x601c0d60
cmp al, 0x55
jne case.0x601c0cf1.61
mov al, byte [esi + 2]
cmp al, 0x67
je 0x601c0d6f
cmp al, 0x47
jne case.0x601c0cf1.61
mov dword [esp + 0x14], 0xf
jmp case.0x601c0cf1.61
mov eax, dword [esp + 0x10]
test eax, eax
jne case.0x601c0cf1.61
mov al, byte [esi + 1]
cmp al, 0x73
je 0x601c0d97
cmp al, 0x53
jne case.0x601c0cf1.61
mov al, byte [esi + 2]
cmp al, 0x74
je 0x601c0da6
cmp al, 0x54
jne case.0x601c0cf1.61
mov dword [esp + 0x10], 0x1f
jmp case.0x601c0cf1.61
mov eax, dword [esp + 0x10]
test eax, eax
jne case.0x601c0cf1.61
mov al, byte [esi + 1]
cmp al, 0x64
je 0x601c0dca
cmp al, 0x44
jne 0x601c0de4
mov cl, byte [esi + 2]
cmp cl, 0x74
je 0x601c0dd7
cmp cl, 0x54
jne 0x601c0de4
mov dword [esp + 0x10], 0x19
jmp case.0x601c0cf1.61
cmp al, 0x73
je 0x601c0df0
cmp al, 0x53
jne case.0x601c0cf1.61
mov al, byte [esi + 2]
cmp al, 0x74
je 0x601c0dff
cmp al, 0x54
jne case.0x601c0cf1.61
mov dword [esp + 0x10], 0x18
jmp case.0x601c0cf1.61
mov eax, dword [esp + 0x14]
test eax, eax
jne case.0x601c0cf1.61
mov al, byte [esi + 1]
cmp al, 0x65
je 0x601c0e27
cmp al, 0x45
jne case.0x601c0cf1.61
mov al, byte [esi + 2]
cmp al, 0x63
je 0x601c0e36
cmp al, 0x43
jne case.0x601c0cf1.61
mov dword [esp + 0x14], 0x13
jmp case.0x601c0cf1.61
mov eax, dword [esp + 0x10]
test eax, eax
jne case.0x601c0cf1.61
mov al, byte [esi + 1]
cmp al, 0x64
je 0x601c0e5a
cmp al, 0x44
jne 0x601c0e74
mov cl, byte [esi + 2]
cmp cl, 0x74
je 0x601c0e67
cmp cl, 0x54
jne 0x601c0e74
mov dword [esp + 0x10], 0x1b
jmp case.0x601c0cf1.61
cmp al, 0x65
je 0x601c0e7c
cmp al, 0x45
jne 0x601c0e96
mov cl, byte [esi + 2]
cmp cl, 0x74
je 0x601c0e89
cmp cl, 0x54
jne 0x601c0e96
mov dword [esp + 0x10], 0x21
jmp case.0x601c0cf1.61
cmp al, 0x73
je 0x601c0ea2
cmp al, 0x53
jne case.0x601c0cf1.61
mov al, byte [esi + 2]
cmp al, 0x74
je 0x601c0eb1
cmp al, 0x54
jne case.0x601c0cf1.61
mov dword [esp + 0x10], 0x1a
jmp case.0x601c0cf1.61
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x601c0ee9
mov al, byte [esi + 1]
cmp al, 0x65
je 0x601c0ed1
cmp al, 0x45
jne 0x601c0ee9
mov al, byte [esi + 2]
cmp al, 0x62
je 0x601c0edc
cmp al, 0x42
jne 0x601c0ee9
mov dword [esp + 0x14], 9
jmp case.0x601c0cf1.61
test ebp, ebp
jne case.0x601c0cf1.61
mov al, byte [esi + 1]
cmp al, 0x72
je 0x601c0f00
cmp al, 0x52
jne case.0x601c0cf1.61
mov al, byte [esi + 2]
cmp al, 0x69
je 0x601c0f0f
cmp al, 0x49
jne case.0x601c0cf1.61
mov dword [esp + 0x1c], 6
jmp case.0x601c0cf1.61
mov eax, dword [esp + 0x10]
test eax, eax
jne case.0x601c0cf1.61
mov al, byte [esi + 1]
cmp al, 0x6d
je 0x601c0f37
cmp al, 0x4d
jne case.0x601c0cf1.61
mov al, byte [esi + 2]
cmp al, 0x74
je 0x601c0f46
cmp al, 0x54
jne case.0x601c0cf1.61
mov dword [esp + 0x10], 0x1e
jmp case.0x601c0cf1.61
mov ecx, dword [esp + 0x14]
test ecx, ecx
jne 0x601c0f7e
mov al, byte [esi + 1]
cmp al, 0x61
je 0x601c0f66
cmp al, 0x41
jne 0x601c0f7e
mov al, byte [esi + 2]
cmp al, 0x6e
je 0x601c0f71
cmp al, 0x4e
jne 0x601c0f7e
mov dword [esp + 0x14], 8
jmp case.0x601c0cf1.61
mov eax, dword [esp + 0x10]
test eax, eax
jne 0x601c0fa9
mov al, byte [esi + 1]
cmp al, 0x73
je 0x601c0f91
cmp al, 0x53
jne 0x601c0fa9
mov al, byte [esi + 2]
cmp al, 0x74
je 0x601c0f9c
cmp al, 0x54
jne 0x601c0fa9
mov dword [esp + 0x10], 0x22
jmp case.0x601c0cf1.61
test ecx, ecx
jne case.0x601c0cf1.61
mov al, byte [esi + 1]
cmp al, 0x75
je 0x601c0fbc
cmp al, 0x55
jne 0x601c0fd6
mov cl, byte [esi + 2]
cmp cl, 0x6c
je 0x601c0fc9
cmp cl, 0x4c
jne 0x601c0fd6
mov dword [esp + 0x14], 0xe
jmp case.0x601c0cf1.61
cmp al, 0x75
je 0x601c0fe2
cmp al, 0x55
jne case.0x601c0cf1.61
mov al, byte [esi + 2]
cmp al, 0x6e
je 0x601c0ff1
cmp al, 0x4e
jne case.0x601c0cf1.61
mov dword [esp + 0x14], 0xd
jmp case.0x601c0cf1.61
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x601c104b
mov al, byte [esi + 1]
cmp al, 0x61
je 0x601c1011
cmp al, 0x41
jne 0x601c102b
mov cl, byte [esi + 2]
cmp cl, 0x72
je 0x601c101e
cmp cl, 0x52
jne 0x601c102b
mov dword [esp + 0x14], 0xa
jmp case.0x601c0cf1.61
cmp al, 0x61
je 0x601c1033
cmp al, 0x41
jne 0x601c104b
mov al, byte [esi + 2]
cmp al, 0x79
je 0x601c103e
cmp al, 0x59
jne 0x601c104b
mov dword [esp + 0x14], 0xc
jmp case.0x601c0cf1.61
mov edx, dword [esp + 0x10]
test edx, edx
jne 0x601c1098
mov al, byte [esi + 1]
cmp al, 0x64
je 0x601c105e
cmp al, 0x44
jne 0x601c1078
mov cl, byte [esi + 2]
cmp cl, 0x74
je 0x601c106b
cmp cl, 0x54
jne 0x601c1078
mov dword [esp + 0x10], 0x17
jmp case.0x601c0cf1.61
cmp al, 0x65
je 0x601c1080
cmp al, 0x45
jne 0x601c1098
mov al, byte [esi + 2]
cmp al, 0x74
je 0x601c108b
cmp al, 0x54
jne 0x601c1098
mov dword [esp + 0x10], 0x20
jmp case.0x601c0cf1.61
test ebp, ebp
jne 0x601c10bf
mov al, byte [esi + 1]
cmp al, 0x6f
je 0x601c10a7
cmp al, 0x4f
jne 0x601c10bf
mov al, byte [esi + 2]
cmp al, 0x6e
je 0x601c10b2
cmp al, 0x4e
jne 0x601c10bf
mov dword [esp + 0x1c], 2
jmp case.0x601c0cf1.61
test edx, edx
jne case.0x601c0cf1.61
mov al, byte [esi + 1]
cmp al, 0x73
je 0x601c10d6
cmp al, 0x53
jne case.0x601c0cf1.61
mov al, byte [esi + 2]
cmp al, 0x74
je 0x601c10e5
cmp al, 0x54
jne case.0x601c0cf1.61
mov dword [esp + 0x10], 0x16
jmp case.0x601c0cf1.61
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x601c111d
mov al, byte [esi + 1]
cmp al, 0x6f
je 0x601c1105
cmp al, 0x4f
jne 0x601c111d
mov al, byte [esi + 2]
cmp al, 0x76
je 0x601c1110
cmp al, 0x56
jne 0x601c111d
mov dword [esp + 0x14], 0x12
jmp case.0x601c0cf1.61
mov eax, dword [esp + 0x10]
test eax, eax
jne case.0x601c0cf1.61
mov al, byte [esi + 1]
cmp al, 0x73
je 0x601c1138
cmp al, 0x53
jne case.0x601c0cf1.61
mov al, byte [esi + 2]
cmp al, 0x74
je 0x601c1147
cmp al, 0x54
jne case.0x601c0cf1.61
mov dword [esp + 0x10], 0x1d
jmp case.0x601c0cf1.61
mov eax, dword [esp + 0x14]
test eax, eax
jne case.0x601c0cf1.61
mov al, byte [esi + 1]
cmp al, 0x63
je 0x601c116f
cmp al, 0x43
jne case.0x601c0cf1.61
mov al, byte [esi + 2]
cmp al, 0x74
je 0x601c117e
cmp al, 0x54
jne case.0x601c0cf1.61
mov dword [esp + 0x14], 0x11
jmp case.0x601c0cf1.61
mov eax, dword [esp + 0x10]
test eax, eax
jne case.0x601c0cf1.61
mov al, byte [esi + 1]
cmp al, 0x64
je 0x601c11a2
cmp al, 0x44
jne 0x601c11bc
mov cl, byte [esi + 2]
cmp cl, 0x74
je 0x601c11af
cmp cl, 0x54
jne 0x601c11bc
mov dword [esp + 0x10], 0x15
jmp case.0x601c0cf1.61
cmp al, 0x73
je 0x601c11c8
cmp al, 0x53
jne case.0x601c0cf1.61
mov al, byte [esi + 2]
cmp al, 0x74
je 0x601c11d7
cmp al, 0x54
jne case.0x601c0cf1.61
mov dword [esp + 0x10], 0x14
jmp case.0x601c0cf1.61
test ebp, ebp
jne 0x601c120b
mov al, byte [esi + 1]
cmp al, 0x61
je 0x601c11f3
cmp al, 0x41
jne 0x601c120b
mov al, byte [esi + 2]
cmp al, 0x74
je 0x601c11fe
cmp al, 0x54
jne 0x601c120b
mov dword [esp + 0x1c], 7
jmp case.0x601c0cf1.61
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x601c1236
mov al, byte [esi + 1]
cmp al, 0x65
je 0x601c121e
cmp al, 0x45
jne 0x601c1236
mov al, byte [esi + 2]
cmp al, 0x70
je 0x601c1229
cmp al, 0x50
jne 0x601c1236
mov dword [esp + 0x14], 0x10
jmp case.0x601c0cf1.61
test ebp, ebp
jne case.0x601c0cf1.61
mov al, byte [esi + 1]
cmp al, 0x75
je 0x601c124d
cmp al, 0x55
jne case.0x601c0cf1.61
mov al, byte [esi + 2]
cmp al, 0x6e
je 0x601c125c
cmp al, 0x4e
jne case.0x601c0cf1.61
mov dword [esp + 0x1c], 1
jmp case.0x601c0cf1.61
test ebp, ebp
jne case.0x601c0cf1.61
mov al, byte [esi + 1]
cmp al, 0x68
je 0x601c127c
cmp al, 0x48
jne 0x601c1296
mov cl, byte [esi + 2]
cmp cl, 0x75
je 0x601c1289
cmp cl, 0x55
jne 0x601c1296
mov dword [esp + 0x1c], 5
jmp case.0x601c0cf1.61
cmp al, 0x75
je 0x601c12a2
cmp al, 0x55
jne case.0x601c0cf1.61
mov al, byte [esi + 2]
cmp al, 0x65
je 0x601c12b1
cmp al, 0x45
jne case.0x601c0cf1.61
mov dword [esp + 0x1c], 3
jmp case.0x601c0cf1.61
mov eax, dword [esp + 0x10]
test eax, eax
jne case.0x601c0cf1.61
mov al, byte [esi + 1]
cmp al, 0x74
je 0x601c12d9
cmp al, 0x54
jne case.0x601c0cf1.61
mov al, byte [esi + 2]
cmp al, 0x41
jl 0x601c12e8
cmp al, 0x5a
jle case.0x601c0cf1.61
cmp al, 0x61
jl 0x601c12f4
cmp al, 0x7a
jle case.0x601c0cf1.61
mov dword [esp + 0x10], 0x1e
jmp case.0x601c0cf1.61
test ebp, ebp
jne case.0x601c0cf1.61
mov al, byte [esi + 1]
cmp al, 0x65
je 0x601c1318
cmp al, 0x45
jne case.0x601c0cf1.61
mov al, byte [esi + 2]
cmp al, 0x64
je 0x601c1327
cmp al, 0x44
jne case.0x601c0cf1.61
mov dword [esp + 0x1c], 4
jmp case.0x601c0cf1.61
cmp dword [esp + 0x24], 0xffffffff
je 0x601c1341
inc esi
jmp case.0x601c0cf1.61
mov ecx, dword [esp + 0x10]
test ecx, ecx
je 0x601c1354
cmp ecx, 0x1e
je 0x601c1354
inc esi
jmp case.0x601c0cf1.61
xor edx, edx
cmp al, 0x2b
mov al, byte [esi + 1]
sete dl
inc esi
cmp al, 0x30
lea edx, [edx + edx - 1]
mov ecx, esi
mov edi, edx
jl case.0x601c0cf1.61
mov dl, al
cmp dl, 0x39
jg 0x601c137f
mov dl, byte [ecx + 1]
inc ecx
cmp dl, 0x30
jge 0x601c1371
cmp esi, ecx
je case.0x601c0cf1.61
sub ecx, esi
cmp ecx, 4
jne 0x601c13c7
movsx ecx, byte [esi + 1]
movsx eax, al
mov dword [esp + 0x10], 0x1e
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 [esp + 0x24], edi
jmp case.0x601c0cf1.61
cmp ecx, 2
jne 0x601c13df
movsx ecx, byte [esi + 1]
movsx eax, al
lea eax, [eax + eax*4]
lea eax, [ecx + eax*2 - 0x210]
jmp 0x601c13ee
cmp ecx, 1
jne case.0x601c0cf1.61
movsx eax, al
sub eax, 0x30
lea eax, [eax + eax*2]
mov dword [esp + 0x10], 0x1e
lea eax, [eax + eax*4]
shl eax, 2
imul edi, eax
mov dword [esp + 0x24], edi
jmp case.0x601c0cf1.61
lea edi, [esi + 1]
mov dword [esp + 0x28], 0xffffffff
mov eax, edi
mov cl, byte [eax]
cmp cl, 0x30
jl 0x601c142d
cmp cl, 0x39
jg 0x601c142d
mov cl, byte [eax + 1]
inc eax
cmp cl, 0x30
jge 0x601c141f
mov cl, byte [eax]
cmp cl, 0x3a
jne 0x601c157d
mov ecx, dword [esp + 0x30]
test ecx, ecx
jl 0x601c144c
mov ecx, dword [esp + 0x2c]
test ecx, ecx
jge case.0x601c0cf1.61
mov ecx, eax
sub ecx, esi
cmp ecx, 2
jg case.0x601c0cf1.61
jne 0x601c146a
movsx ecx, byte [edi]
lea edx, [edx + edx*4]
lea ebp, [ecx + edx*2 - 0x210]
jmp 0x601c146d
lea ebp, [edx - 0x30]
mov cl, byte [eax + 1]
inc eax
cmp cl, 0x30
mov esi, eax
jl case.0x601c0cf1.61
cmp cl, 0x39
jg 0x601c148a
mov cl, byte [eax + 1]
inc eax
cmp cl, 0x30
jge 0x601c147c
cmp eax, esi
je case.0x601c0cf1.61
mov ecx, eax
sub ecx, esi
cmp ecx, 2
jg case.0x601c0cf1.61
jne 0x601c14b4
movsx ecx, byte [esi]
lea edx, [ecx + ecx*4]
movsx ecx, byte [esi + 1]
lea edx, [ecx + edx*2 - 0x210]
jmp 0x601c14ba
movsx edx, byte [esi]
sub edx, 0x30
mov cl, byte [eax]
mov esi, eax
cmp cl, 0x3a
jne 0x601c14c6
lea esi, [eax + 1]
mov cl, byte [esi]
mov edi, esi
cmp cl, 0x30
jl 0x601c150a
mov al, cl
cmp al, 0x39
jg 0x601c14dd
mov al, byte [edi + 1]
inc edi
cmp al, 0x30
jge 0x601c14d1
cmp edi, esi
je 0x601c150a
mov eax, edi
sub eax, esi
cmp eax, 2
jg case.0x601c0cf1.61
movsx eax, cl
jne 0x601c1503
movsx ecx, byte [esi + 1]
lea eax, [eax + eax*4]
lea eax, [ecx + eax*2 - 0x210]
jmp 0x601c1506
sub eax, 0x30
mov dword [esp + 0x28], eax
cmp ebp, 0xc
jg 0x601c1566
mov al, byte [edi]
mov ecx, edi
test al, al
je 0x601c1527
cmp al, 0x20
je 0x601c151f
cmp al, 9
jne 0x601c1527
mov al, byte [ecx + 1]
inc ecx
test al, al
jne 0x601c1517
mov al, byte [ecx]
cmp al, 0x70
je 0x601c1531
cmp al, 0x50
jne 0x601c153e
mov bl, byte [ecx + 1]
cmp bl, 0x6d
je 0x601c155c
cmp bl, 0x4d
je 0x601c155c
cmp ebp, 0xc
jne 0x601c1566
cmp al, 0x61
je 0x601c154b
cmp al, 0x41
jne 0x601c1566
mov cl, byte [ecx + 1]
cmp cl, 0x6d
je 0x601c1558
cmp cl, 0x4d
jne 0x601c1566
xor ebp, ebp
jmp 0x601c1566
cmp ebp, 0xc
jne 0x601c1563
jmp 0x601c1566
add ebp, 0xc
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x30], ebp
mov dword [esp + 0x2c], edx
mov dword [esp + 0x34], ecx
mov esi, edi
jmp case.0x601c0cf1.61
cmp cl, 0x2f
je 0x601c158b
cmp cl, 0x2d
jne 0x601c1757
mov bl, byte [eax + 1]
cmp bl, 0x30
jl 0x601c1757
cmp bl, 0x39
jg 0x601c1757
mov eax, dword [esp + 0x14]
test eax, eax
jne case.0x601c0cf1.61
mov eax, edi
lea ebx, [edx - 0x30]
mov cl, byte [eax]
cmp cl, 0x30
jl 0x601c15c8
cmp cl, 0x39
jg 0x601c15c8
movsx ecx, cl
lea edx, [ebx + ebx*4]
inc eax
lea ebx, [ecx + edx*2 - 0x30]
mov cl, byte [eax]
cmp cl, 0x2f
je 0x601c15d8
cmp cl, 0x2d
jne case.0x601c0cf1.61
mov cl, byte [eax + 1]
inc eax
cmp cl, 0x30
jl case.0x601c0cf1.61
cmp cl, 0x39
jg case.0x601c0cf1.61
movsx edi, cl
mov cl, byte [eax + 1]
sub edi, 0x30
inc eax
cmp cl, 0x30
jl 0x601c160d
cmp cl, 0x39
jg 0x601c160d
movsx ecx, cl
lea edx, [edi + edi*4]
inc eax
lea edi, [ecx + edx*2 - 0x30]
mov cl, byte [eax]
cmp cl, 0x2f
je 0x601c161d
cmp cl, 0x2d
jne case.0x601c0cf1.61
mov cl, byte [eax + 1]
inc eax
cmp cl, 0x30
jl case.0x601c0cf1.61
cmp cl, 0x39
jg case.0x601c0cf1.61
movsx ecx, cl
mov dl, byte [eax + 1]
sub ecx, 0x30
inc eax
cmp dl, 0x30
jl 0x601c1698
cmp dl, 0x39
jg 0x601c1652
movsx edx, dl
lea ecx, [ecx + ecx*4]
inc eax
lea ecx, [edx + ecx*2 - 0x30]
mov dl, byte [eax]
cmp dl, 0x30
jl 0x601c1698
cmp dl, 0x39
jg 0x601c1688
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.0x601c0cf1.61
cmp cl, 0x39
jg case.0x601c0cf1.61
movsx ecx, cl
lea edx, [edx + edx*4]
inc eax
lea ecx, [ecx + edx*2 - 0x30]
mov dl, byte [eax]
cmp dl, 0x30
jl 0x601c1698
cmp dl, 0x39
jle case.0x601c0cf1.61
cmp dl, 0x41
jl 0x601c16a6
cmp dl, 0x5a
jle case.0x601c0cf1.61
cmp dl, 0x61
jl 0x601c16b4
cmp dl, 0x7a
jle case.0x601c0cf1.61
cmp ebx, 0x1f
jg 0x601c1713
test ebx, ebx
je 0x601c1713
cmp ebx, 0xc
jle 0x601c16ce
cmp edi, 0xc
jle 0x601c16ce
mov esi, eax
jmp case.0x601c0cf1.61
cmp ecx, 0x46
jge 0x601c16db
add ecx, 0x7d0
jmp 0x601c16e6
cmp ecx, 0x64
jge 0x601c16e6
add ecx, 0x76c
cmp ebx, 0xc
mov dword [esp + 0x18], ecx
jle 0x601c1701
add edi, 7
mov dword [esp + 0x20], ebx
mov dword [esp + 0x14], edi
mov esi, eax
jmp case.0x601c0cf1.61
add ebx, 7
mov dword [esp + 0x20], edi
mov dword [esp + 0x14], ebx
mov esi, eax
jmp case.0x601c0cf1.61
cmp edi, 0xc
jg case.0x601c0cf1.61
cmp ecx, 0x1f
jg case.0x601c0cf1.61
cmp ebx, 0x46
mov dword [esp + 0x18], ebx
jge 0x601c1736
add ebx, 0x7d0
jmp 0x601c1741
cmp ebx, 0x64
jge 0x601c1745
add ebx, 0x76c
mov dword [esp + 0x18], ebx
add edi, 7
mov dword [esp + 0x20], ecx
mov dword [esp + 0x14], edi
mov esi, eax
jmp case.0x601c0cf1.61
cmp cl, 0x41
jl 0x601c1765
cmp cl, 0x5a
jle case.0x601c0cf1.61
cmp cl, 0x61
jl 0x601c1773
cmp cl, 0x7a
jle case.0x601c0cf1.61
sub eax, esi
cmp eax, 4
jne 0x601c17ad
mov eax, dword [esp + 0x18]
test eax, eax
jge case.0x601c0cf1.61
movsx eax, byte [edi]
lea edx, [edx + edx*4]
lea eax, [eax + edx*2]
movsx edx, byte [esi + 2]
lea ecx, [eax + eax*4]
lea eax, [edx + ecx*2]
movsx ecx, byte [esi + 3]
lea eax, [eax + eax*4]
lea edx, [ecx + eax*2 - 0xd050]
mov dword [esp + 0x18], edx
jmp case.0x601c0cf1.61
cmp eax, 2
jne 0x601c17fa
movsx ecx, byte [edi]
lea eax, [edx + edx*4]
lea eax, [ecx + eax*2 - 0x210]
mov ecx, dword [esp + 0x20]
test ecx, ecx
jge 0x601c17d2
cmp eax, 0x20
jge 0x601c17d2
mov dword [esp + 0x20], eax
jmp case.0x601c0cf1.61
mov ecx, dword [esp + 0x18]
test ecx, ecx
jge case.0x601c0cf1.61
cmp eax, 0x46
jge 0x601c17ea
add eax, 0x7d0
mov dword [esp + 0x18], eax
jmp case.0x601c0cf1.61
cmp eax, 0x64
jge 0x601c17f4
add eax, 0x76c
mov dword [esp + 0x18], eax
jmp case.0x601c0cf1.61
cmp eax, 1
jne case.0x601c0cf1.61
mov eax, dword [esp + 0x20]
test eax, eax
jge case.0x601c0cf1.61
add edx, 0xffffffd0
mov dword [esp + 0x20], edx
mov al, byte [esi]
test al, al
je 0x601c184a
cmp al, 0x20
je 0x601c184a
cmp al, 9
je 0x601c184a
cmp al, 0x2c
je 0x601c184a
cmp al, 0x3b
je 0x601c184a
cmp al, 0x2d
je 0x601c184a
cmp al, 0x2b
je 0x601c184a
cmp al, 0x2f
je 0x601c184a
cmp al, 0x28
je 0x601c184a
cmp al, 0x29
je 0x601c184a
cmp al, 0x5b
je 0x601c184a
cmp al, 0x5d
je 0x601c184a
mov al, byte [esi + 1]
inc esi
test al, al
jne 0x601c1814
jmp 0x601c187c
mov al, byte [esi]
test al, al
je 0x601c187c
cmp al, 0x20
je 0x601c1874
cmp al, 9
je 0x601c1874
cmp al, 0x2c
je 0x601c1874
cmp al, 0x3b
je 0x601c1874
cmp al, 0x2f
je 0x601c1874
cmp al, 0x28
je 0x601c1874
cmp al, 0x29
je 0x601c1874
cmp al, 0x5b
je 0x601c1874
cmp al, 0x5d
jne 0x601c187c
mov al, byte [esi + 1]
inc esi
test al, al
jne 0x601c1850
cmp byte [esi], 0x2d
jne 0x601c18dc
cmp esi, dword [esp + 0x88]
jbe 0x601c18cb
mov edx, dword [sym.imp.MSVCRT.dll___mb_cur_max]
cmp dword [edx], 1
jle 0x601c18aa
movsx eax, byte [esi - 1]
push 0x103
push eax
call dword [sym.imp.MSVCRT.dll__isctype]
add esp, 8
jmp 0x601c18bf
mov edx, dword [sym.imp.MSVCRT.dll__pctype]
movsx ecx, byte [esi - 1]
mov eax, dword [edx]
mov ax, word [eax + ecx*2]
and eax, 0x103
test eax, eax
je 0x601c18cb
mov eax, dword [esp + 0x18]
test eax, eax
jl 0x601c18d6
mov al, byte [esi + 1]
cmp al, 0x30
jl 0x601c18d6
cmp al, 0x39
jle 0x601c18dc
inc esi
jmp 0x601c184a
cmp byte [esi], 0
jne 0x601c0cd4
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x24]
test eax, eax
je case.default.0x601c18fe
cmp edx, 0xffffffff
jne case.default.0x601c18fe
add eax, 0xffffffec
cmp eax, 0xe
ja case.default.0x601c18fe
jmp dword [eax*4 + 0x601c1b60]
mov edx, 0xfffffe20
jmp case.default.0x601c18fe
mov edx, 0xfffffe5c
jmp case.default.0x601c18fe
mov edx, 0xfffffe98
jmp case.default.0x601c18fe
mov edx, 0xfffffed4
jmp case.default.0x601c18fe
mov edx, 0xffffff10
jmp case.default.0x601c18fe
mov edx, 0xffffff2e
jmp case.default.0x601c18fe
xor edx, edx
jmp case.default.0x601c18fe
mov edx, 0x3c
jmp case.default.0x601c18fe
mov edx, 0x78
jmp case.default.0x601c18fe
mov edx, 0x21c
mov eax, dword [esp + 0x14]
test eax, eax
je 0x601c0cc9
mov ebx, dword [esp + 0x20]
cmp ebx, 0xffffffff
je 0x601c0cc9
mov ebp, dword [esp + 0x18]
cmp ebp, 0xffffffff
je 0x601c0cc9
mov ecx, 0xa
xor eax, eax
lea edi, [esp + 0x5c]
rep stosd dword es:[edi], eax
mov eax, dword [esp + 0x34]
cmp eax, 0xffffffff
je 0x601c1986
mov dword [esp + 0x60], eax
mov edi, dword [esp + 0x2c]
cmp edi, 0xffffffff
jne 0x601c1993
mov edi, dword [esp + 0x64]
mov esi, dword [esp + 0x30]
cmp esi, 0xffffffff
jne 0x601c19a0
mov esi, dword [esp + 0x68]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x6c], ebx
mov word [esp + 0x74], bp
lea eax, [ecx - 8]
mov ecx, dword [esp + 0x1c]
test ecx, ecx
mov dword [esp + 0x70], eax
je 0x601c19c2
dec cl
mov byte [esp + 0x76], cl
mov ecx, dword [esp + 0x10]
test ecx, ecx
jne 0x601c19dc
mov ecx, dword [esp + 0x8c]
test ecx, ecx
je 0x601c19dc
xor edx, edx
jmp 0x601c1a8b
cmp edx, 0xffffffff
jne 0x601c1a8b
cmp bp, 0x7b2
jl 0x601c1a55
mov edx, dword [esp + 0x60]
mov dword [esp + 0x48], eax
movsx eax, bp
lea ecx, [esp + 0x38]
sub eax, 0x76c
push ecx
mov dword [esp + 0x3c], edx
mov dword [esp + 0x40], edi
mov dword [esp + 0x44], esi
mov dword [esp + 0x48], ebx
mov dword [esp + 0x50], eax
mov dword [esp + 0x5c], 0xffffffff
call dword [sym.imp.MSVCRT.dll_mktime]
add esp, 4
cmp eax, 0xffffffff
je 0x601c1a55
mov esi, dword [esp + 0x90]
push 0
cdq
push 0xf4240
push edx
push eax
mov dword [esi], eax
mov dword [esi + 4], edx
call fcn.601cab60
mov dword [esi], eax
mov dword [esi + 4], edx
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x74
ret
lea ecx, [esp + 0x38]
lea edx, [esp + 0x34]
push ecx
push edx
mov dword [esp + 0x3c], 0x15180
call fcn.601c0a90
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x48]
add esp, 8
lea eax, [eax + eax*2 - 6]
lea eax, [ecx + eax*8]
lea eax, [eax + eax*2]
lea edx, [eax + eax*4]
mov eax, dword [esp + 0x3c]
lea edx, [eax + edx*4]
mov eax, edx
mov ecx, 0x3c
cdq
idiv ecx
sub edi, edx
lea edx, [esp + 0x5c]
sub esi, eax
push edx
mov dword [esp + 0x6c], esi
mov dword [esp + 0x68], edi
call sym.nspr4.dll_PR_ImplodeTime
mov ecx, dword [esp + 0x94]
add esp, 4
pop edi
pop esi
mov dword [ecx], eax
pop ebp
mov dword [ecx + 4], edx
xor eax, eax
pop ebx
add esp, 0x74
ret