Function at 0x41fd00
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x488ea0
mov eax, dword fs:[0]
push eax
sub esp, 0x5c
mov eax, dword [0x4ab13c]
xor eax, esp
mov dword [esp + 0x58], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x4ab13c]
xor eax, esp
push eax
lea eax, [esp + 0x70]
mov dword fs:[0], eax
mov eax, dword [esp + 0x90]
mov ebx, dword [esp + 0x84]
mov edi, dword [esp + 0x8c]
mov esi, dword [esp + 0x88]
push eax
mov dword [esp + 0x34], ebx
mov dword [esp + 0x24], edi
call fcn.0040dfc0
mov ebp, eax
add esp, 4
lea eax, [esp + 0x50]
push eax
mov ecx, ebp
call fcn.0040dbc0
cmp byte [esi + 8], 0
mov dword [esp + 0x78], 0
mov dword [esp + 0x18], ebx
mov byte [esp + 0x1f], 0
jne 0x41fd8b
mov ecx, esi
call fcn.0041b3f0
cmp byte [edi + 8], 0
jne 0x41fd98
mov ecx, edi
call fcn.0041b3f0
mov eax, dword [esi + 4]
test eax, eax
jne 0x41fda8
cmp dword [edi + 4], eax
je 0x41fdea
test eax, eax
je 0x41fdae
cmp dword [edi + 4], 0
jne 0x41fdea
cmp byte [esi + 8], 0
jne 0x41fdbb
mov ecx, esi
call fcn.0041b3f0
cmp byte [esi + 9], 0x2b
jne 0x41fdc6
mov byte [ebx], 0x2b
jmp 0x41fddc
cmp byte [esi + 8], 0
jne 0x41fdd3
mov ecx, esi
call fcn.0041b3f0
cmp byte [esi + 9], 0x2d
jne 0x41fdea
mov byte [ebx], 0x2d
add ebx, 1
mov ecx, esi
mov dword [esp + 0x18], ebx
call fcn.0041b3a0
mov eax, dword [esp + 0x68]
mov edx, dword [esp + 0x54]
xor edi, edi
cmp eax, 0x10
mov byte [esp + 0x17], 0
mov dword [esp + 0x2c], edi
mov dword [esp + 0x28], edi
mov ecx, edx
jae 0x41fe0c
lea ecx, [esp + 0x54]
cmp byte [ecx], 0x7f
je 0x4200e0
cmp eax, 0x10
mov eax, edx
jae 0x41fe20
lea eax, [esp + 0x54]
cmp byte [eax], 0
jle 0x4200e0
mov edx, dword [ebp]
mov eax, dword [edx + 8]
mov ecx, ebp
call eax
mov byte [esp + 0x27], al
mov dword [esp + 0x4c], 0xf
mov byte [esp + 0x38], 0
mov dword [esp + 0x48], 1
mov byte [esp + 0x39], 0
mov ecx, dword [esp + 0x20]
push ecx
push esi
mov byte [esp + 0x80], 1
xor ebx, ebx
call fcn.0041b4b0
add esp, 8
test al, al
je 0x41fff6
cmp byte [esi + 8], 0
jne 0x41feb1
mov ecx, dword [esi + 4]
test ecx, ecx
je 0x41fea6
mov eax, dword [ecx + 0x20]
cmp dword [eax], 0
je 0x41fe95
mov edx, dword [ecx + 0x30]
cmp dword [edx], 0
jle 0x41fe95
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x41fe9c
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
cmp eax, 0xffffffff
je 0x41fea6
mov byte [esi + 9], al
jmp 0x41fead
mov dword [esi + 4], 0
mov byte [esi + 8], 1
cmp byte [esi + 9], 0x30
jl 0x41ff5e
cmp byte [esi + 8], 0
jne 0x41fec8
mov ecx, esi
call fcn.0041b3f0
cmp byte [esi + 9], 0x39
jg 0x41ff5e
cmp edi, 0x24
mov byte [esp + 0x17], 1
jl 0x41fee3
add dword [esp + 0x28], 1
jmp 0x41ff1e
cmp byte [esi + 8], 0
jne 0x41fef0
mov ecx, esi
call fcn.0041b3f0
cmp byte [esi + 9], 0x30
jne 0x41fefa
test edi, edi
je 0x41ff1e
cmp byte [esi + 8], 0
jne 0x41ff07
mov ecx, esi
call fcn.0041b3f0
mov ecx, dword [esp + 0x18]
mov al, byte [esi + 9]
mov byte [ecx], al
add ecx, 1
add edi, 1
mov dword [esp + 0x18], ecx
mov dword [esp + 0x2c], edi
cmp ebx, dword [esp + 0x48]
jbe 0x41ff29
call fcn.0045c182
cmp dword [esp + 0x4c], 0x10
mov eax, dword [esp + 0x38]
jae 0x41ff38
lea eax, [esp + 0x38]
cmp byte [eax + ebx], 0x7f
je 0x41ffab
cmp ebx, dword [esp + 0x48]
jbe 0x41ff49
call fcn.0045c182
cmp dword [esp + 0x4c], 0x10
mov eax, dword [esp + 0x38]
jae 0x41ff58
lea eax, [esp + 0x38]
add byte [eax + ebx], 1
jmp 0x41ffab
cmp ebx, dword [esp + 0x48]
jbe 0x41ff69
call fcn.0045c182
cmp dword [esp + 0x4c], 0x10
mov eax, dword [esp + 0x38]
jae 0x41ff78
lea eax, [esp + 0x38]
cmp byte [eax + ebx], 0
je 0x41ffc8
cmp byte [esp + 0x27], 0
je 0x41ffc8
cmp byte [esi + 8], 0
jne 0x41ff92
mov ecx, esi
call fcn.0041b3f0
mov al, byte [esp + 0x27]
cmp byte [esi + 9], al
jne 0x41ffc8
push 0
push 1
lea ecx, [esp + 0x3c]
call fcn.00404289
add ebx, 1
mov ecx, esi
call fcn.0041b3a0
mov ecx, dword [esp + 0x20]
push ecx
push esi
call fcn.0041b4b0
add esp, 8
test al, al
jne 0x41fe71
test ebx, ebx
je 0x41fff6
cmp ebx, dword [esp + 0x48]
jbe 0x41ffd7
call fcn.0045c182
cmp dword [esp + 0x4c], 0x10
mov eax, dword [esp + 0x38]
jae 0x41ffe6
lea eax, [esp + 0x38]
cmp byte [eax + ebx], 0
jle 0x41fff1
add ebx, 1
jmp 0x41fff6
mov byte [esp + 0x1f], 1
cmp dword [esp + 0x68], 0x10
mov edi, dword [esp + 0x54]
jae 0x420005
lea edi, [esp + 0x54]
cmp byte [esp + 0x1f], 0
jne 0x420074
lea esp, [esp]
test ebx, ebx
jbe 0x420074
cmp byte [edi], 0x7f
je 0x420074
sub ebx, 1
je 0x42003f
cmp ebx, dword [esp + 0x48]
jbe 0x420029
call fcn.0045c182
cmp dword [esp + 0x4c], 0x10
mov eax, dword [esp + 0x38]
jae 0x420038
lea eax, [esp + 0x38]
mov dl, byte [edi]
cmp dl, byte [eax + ebx]
jne 0x42006f
test ebx, ebx
jne 0x420064
cmp ebx, dword [esp + 0x48]
jbe 0x42004e
call fcn.0045c182
cmp dword [esp + 0x4c], 0x10
mov eax, dword [esp + 0x38]
jae 0x42005d
lea eax, [esp + 0x38]
mov cl, byte [edi]
cmp cl, byte [eax + ebx]
jl 0x42006f
cmp byte [edi + 1], 0
jle 0x420010
add edi, 1
jmp 0x420010
mov byte [esp + 0x1f], 1
cmp dword [esp + 0x4c], 0x10
mov byte [esp + 0x78], 0
jb 0x42008d
mov edx, dword [esp + 0x38]
push edx
call fcn.00451909
add esp, 4
cmp byte [esp + 0x17], 0
je 0x4200a9
cmp dword [esp + 0x2c], 0
jne 0x4200a9
mov eax, dword [esp + 0x18]
mov byte [eax], 0x30
add eax, 1
mov dword [esp + 0x18], eax
cmp byte [esi + 8], 0
jne 0x42028f
mov ecx, dword [esi + 4]
test ecx, ecx
je 0x420284
mov eax, dword [ecx + 0x20]
cmp dword [eax], 0
je 0x420273
mov edx, dword [ecx + 0x30]
cmp dword [edx], 0
jle 0x420273
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x42027a
cmp byte [esi + 8], 0
mov ebx, dword [esp + 0x20]
jne 0x42011e
mov ecx, dword [esi + 4]
cmp ecx, edi
je 0x420117
mov eax, dword [ecx + 0x20]
cmp dword [eax], edi
je 0x420106
mov edx, dword [ecx + 0x30]
cmp dword [edx], edi
jle 0x420106
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x42010d
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x420117
mov byte [esi + 9], al
jmp 0x42011a
mov dword [esi + 4], edi
mov byte [esi + 8], 1
cmp byte [ebx + 8], 0
jne 0x420158
mov ecx, dword [ebx + 4]
cmp ecx, edi
je 0x420151
mov eax, dword [ecx + 0x20]
cmp dword [eax], edi
je 0x420140
mov edx, dword [ecx + 0x30]
cmp dword [edx], edi
jle 0x420140
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x420147
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x420151
mov byte [ebx + 9], al
jmp 0x420154
mov dword [ebx + 4], edi
mov byte [ebx + 8], 1
mov ecx, dword [esi + 4]
cmp ecx, edi
jne 0x42016a
cmp dword [ebx + 4], edi
je 0x42008d
jmp 0x420173
cmp dword [ebx + 4], edi
jne 0x42008d
cmp byte [esi + 8], 0
jne 0x4201b0
test ecx, ecx
je 0x4201a5
mov eax, dword [ecx + 0x20]
cmp dword [eax], 0
je 0x420194
mov edx, dword [ecx + 0x30]
cmp dword [edx], 0
jle 0x420194
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x42019b
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x4201a5
mov byte [esi + 9], al
jmp 0x4201ac
mov dword [esi + 4], 0
mov byte [esi + 8], 1
cmp byte [esi + 9], 0x30
jl 0x42008d
cmp byte [esi + 8], 0
jne 0x4201fa
mov ecx, dword [esi + 4]
test ecx, ecx
je 0x4201ef
mov eax, dword [ecx + 0x20]
cmp dword [eax], 0
je 0x4201de
mov edx, dword [ecx + 0x30]
cmp dword [edx], 0
jle 0x4201de
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x4201e5
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x4201ef
mov byte [esi + 9], al
jmp 0x4201f6
mov dword [esi + 4], 0
mov byte [esi + 8], 1
cmp byte [esi + 9], 0x39
jg 0x42008d
mov edi, dword [esp + 0x2c]
cmp edi, 0x24
jl 0x420225
add dword [esp + 0x28], 1
mov ecx, esi
mov byte [esp + 0x17], 1
call fcn.0041b3a0
xor edi, edi
jmp 0x4200e0
cmp byte [esi + 8], 0
jne 0x420232
mov ecx, esi
call fcn.0041b3f0
cmp byte [esi + 9], 0x30
jne 0x42023c
test edi, edi
je 0x420260
cmp byte [esi + 8], 0
jne 0x420249
mov ecx, esi
call fcn.0041b3f0
mov eax, dword [esp + 0x18]
mov cl, byte [esi + 9]
mov byte [eax], cl
add eax, 1
add edi, 1
mov dword [esp + 0x18], eax
mov dword [esp + 0x2c], edi
mov ecx, esi
mov byte [esp + 0x17], 1
call fcn.0041b3a0
xor edi, edi
jmp 0x4200e0
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x420284
mov byte [esi + 9], al
jmp 0x42028b
mov dword [esi + 4], 0
mov byte [esi + 8], 1
mov edx, dword [esp + 0x20]
cmp byte [edx + 8], 0
jne 0x4202d7
mov ecx, dword [edx + 4]
test ecx, ecx
je 0x4202cc
mov eax, dword [ecx + 0x20]
cmp dword [eax], 0
je 0x4202b7
mov edi, dword [ecx + 0x30]
cmp dword [edi], 0
jle 0x4202b7
mov ecx, dword [eax]
movzx eax, byte [ecx]
jmp 0x4202c2
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
mov edx, dword [esp + 0x20]
cmp eax, 0xffffffff
je 0x4202cc
mov byte [edx + 9], al
jmp 0x4202d3
mov dword [edx + 4], 0
mov byte [edx + 8], 1
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4202ef
cmp dword [edx + 4], ecx
je 0x4203a5
test ecx, ecx
mov edx, dword [esp + 0x20]
je 0x4202f9
cmp dword [edx + 4], 0
jne 0x4203a5
cmp byte [esi + 8], 0
jne 0x420336
test ecx, ecx
je 0x42032b
mov eax, dword [ecx + 0x20]
cmp dword [eax], 0
je 0x42031a
mov edx, dword [ecx + 0x30]
cmp dword [edx], 0
jle 0x42031a
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x420321
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x42032b
mov byte [esi + 9], al
jmp 0x420332
mov dword [esi + 4], 0
mov byte [esi + 8], 1
mov edx, dword [ebp]
mov eax, dword [edx + 4]
mov bl, byte [esi + 9]
mov ecx, ebp
call eax
cmp bl, al
jne 0x4203a5
call fcn.0045c192
mov ecx, dword [eax]
mov eax, dword [esp + 0x18]
mov dl, byte [ecx]
mov byte [eax], dl
mov ecx, dword [esi + 4]
add eax, 1
test ecx, ecx
mov dword [esp + 0x18], eax
je 0x42039a
mov eax, dword [ecx + 0x20]
cmp dword [eax], 0
je 0x420388
mov edx, dword [ecx + 0x30]
cmp dword [edx], 0
jle 0x420388
mov eax, edx
add dword [eax], 0xffffffff
mov ecx, dword [ecx + 0x20]
mov eax, dword [ecx]
lea edx, [eax + 1]
mov dword [ecx], edx
movzx eax, byte [eax]
jmp 0x42038f
mov eax, dword [ecx]
mov edx, dword [eax + 0x14]
call edx
cmp eax, 0xffffffff
je 0x42039a
mov byte [esi + 8], 0
jmp 0x4203a5
mov dword [esi + 4], 0
mov byte [esi + 8], 1
xor ebx, ebx
cmp dword [esp + 0x2c], ebx
jne 0x4204f5
mov ebp, dword [esp + 0x20]
mov edi, dword [esp + 0x28]
lea esp, [esp]
cmp byte [esi + 8], 0
jne 0x4203fa
mov ecx, dword [esi + 4]
cmp ecx, ebx
je 0x4203f3
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x4203e2
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x4203e2
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x4203e9
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x4203f3
mov byte [esi + 9], al
jmp 0x4203f6
mov dword [esi + 4], ebx
mov byte [esi + 8], 1
cmp byte [ebp + 8], 0
jne 0x420434
mov ecx, dword [ebp + 4]
cmp ecx, ebx
je 0x42042d
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x42041c
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x42041c
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x420423
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x42042d
mov byte [ebp + 9], al
jmp 0x420430
mov dword [ebp + 4], ebx
mov byte [ebp + 8], 1
mov ecx, dword [esi + 4]
cmp ecx, ebx
jne 0x420463
cmp dword [ebp + 4], ebx
jne 0x420468
cmp edi, ebx
mov ebp, dword [esp + 0x18]
mov dword [esp + 0x28], edi
jge 0x4204f9
mov byte [ebp], 0x30
add ebp, 1
add edi, 1
mov dword [esp + 0x28], edi
jmp 0x4204f9
cmp dword [ebp + 4], ebx
jne 0x420440
cmp byte [esi + 8], 0
jne 0x42049f
cmp ecx, ebx
je 0x420498
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x420487
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x420487
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x42048e
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x420498
mov byte [esi + 9], al
jmp 0x42049b
mov dword [esi + 4], ebx
mov byte [esi + 8], 1
cmp byte [esi + 9], 0x30
jne 0x420440
mov ecx, dword [esi + 4]
sub edi, 1
cmp ecx, ebx
mov byte [esp + 0x17], 1
je 0x4204e9
mov edx, dword [ecx + 0x20]
cmp dword [edx], ebx
je 0x4204d4
mov eax, dword [ecx + 0x30]
cmp dword [eax], ebx
jle 0x4204d4
add dword [eax], 0xffffffff
mov ecx, dword [ecx + 0x20]
mov eax, dword [ecx]
lea edx, [eax + 1]
mov dword [ecx], edx
movzx eax, byte [eax]
jmp 0x4204db
mov eax, dword [ecx]
mov edx, dword [eax + 0x14]
call edx
cmp eax, 0xffffffff
je 0x4204e9
mov byte [esi + 8], 0
jmp 0x4203c0
mov dword [esi + 4], ebx
mov byte [esi + 8], 1
jmp 0x4203c0
mov ebp, dword [esp + 0x18]
mov edi, dword [esp + 0x20]
lea ecx, [ecx]
cmp byte [esi + 8], 0
jne 0x42053a
mov ecx, dword [esi + 4]
cmp ecx, ebx
je 0x420533
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x420522
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x420522
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x420529
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x420533
mov byte [esi + 9], al
jmp 0x420536
mov dword [esi + 4], ebx
mov byte [esi + 8], 1
cmp byte [edi + 8], 0
jne 0x420574
mov ecx, dword [edi + 4]
cmp ecx, ebx
je 0x42056d
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x42055c
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x42055c
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x420563
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x42056d
mov byte [edi + 9], al
jmp 0x420570
mov dword [edi + 4], ebx
mov byte [edi + 8], 1
mov ecx, dword [esi + 4]
cmp ecx, ebx
jne 0x4205c6
cmp dword [edi + 4], ebx
jne 0x4205cb
cmp byte [esp + 0x17], 0
mov dword [esp + 0x18], ebp
je 0x420c04
cmp byte [esi + 8], 0
jne 0x420708
mov ecx, dword [esi + 4]
test ecx, ecx
je 0x4206fd
mov eax, dword [ecx + 0x20]
cmp dword [eax], 0
je 0x4206ec
mov edx, dword [ecx + 0x30]
cmp dword [edx], 0
jle 0x4206ec
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x4206f3
cmp dword [edi + 4], ebx
jne 0x420580
cmp byte [esi + 8], 0
jne 0x420602
cmp ecx, ebx
je 0x4205fb
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x4205ea
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x4205ea
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x4205f1
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x4205fb
mov byte [esi + 9], al
jmp 0x4205fe
mov dword [esi + 4], ebx
mov byte [esi + 8], 1
cmp byte [esi + 9], 0x30
jl 0x420580
cmp byte [esi + 8], 0
jne 0x420646
mov ecx, dword [esi + 4]
cmp ecx, ebx
je 0x42063f
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x42062e
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x42062e
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x420635
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x42063f
mov byte [esi + 9], al
jmp 0x420642
mov dword [esi + 4], ebx
mov byte [esi + 8], 1
cmp byte [esi + 9], 0x39
jg 0x420580
cmp dword [esp + 0x2c], 0x24
jge 0x42069f
cmp byte [esi + 8], 0
jne 0x420691
mov ecx, dword [esi + 4]
cmp ecx, ebx
je 0x42068a
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x420679
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x420679
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x420680
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x42068a
mov byte [esi + 9], al
jmp 0x42068d
mov dword [esi + 4], ebx
mov byte [esi + 8], 1
mov cl, byte [esi + 9]
mov byte [ebp], cl
add ebp, 1
add dword [esp + 0x2c], 1
mov ecx, dword [esi + 4]
cmp ecx, ebx
mov byte [esp + 0x17], 1
je 0x4206e0
mov edx, dword [ecx + 0x20]
cmp dword [edx], ebx
je 0x4206cb
mov eax, dword [ecx + 0x30]
cmp dword [eax], ebx
jle 0x4206cb
add dword [eax], 0xffffffff
mov ecx, dword [ecx + 0x20]
mov eax, dword [ecx]
lea edx, [eax + 1]
mov dword [ecx], edx
movzx eax, byte [eax]
jmp 0x4206d2
mov eax, dword [ecx]
mov edx, dword [eax + 0x14]
call edx
cmp eax, 0xffffffff
je 0x4206e0
mov byte [esi + 8], 0
jmp 0x420500
mov dword [esi + 4], ebx
mov byte [esi + 8], 1
jmp 0x420500
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x4206fd
mov byte [esi + 9], al
jmp 0x420704
mov dword [esi + 4], 0
mov byte [esi + 8], 1
cmp byte [edi + 8], 0
jne 0x420748
mov ecx, dword [edi + 4]
test ecx, ecx
je 0x42073d
mov eax, dword [ecx + 0x20]
cmp dword [eax], 0
je 0x42072c
mov edx, dword [ecx + 0x30]
cmp dword [edx], 0
jle 0x42072c
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x420733
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x42073d
mov byte [edi + 9], al
jmp 0x420744
mov dword [edi + 4], 0
mov byte [edi + 8], 1
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42075c
cmp dword [edi + 4], ecx
je 0x420c04
test ecx, ecx
je 0x420766
cmp dword [edi + 4], 0
jne 0x420c04
cmp byte [esi + 8], 0
jne 0x4207a3
test ecx, ecx
je 0x420798
mov eax, dword [ecx + 0x20]
cmp dword [eax], 0
je 0x420787
mov edx, dword [ecx + 0x30]
cmp dword [edx], 0
jle 0x420787
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x42078e
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x420798
mov byte [esi + 9], al
jmp 0x42079f
mov dword [esi + 4], 0
mov byte [esi + 8], 1
cmp byte [esi + 9], 0x65
je 0x4207f3
cmp byte [esi + 8], 0
jne 0x4207e9
mov ecx, dword [esi + 4]
test ecx, ecx
je 0x4207de
mov eax, dword [ecx + 0x20]
cmp dword [eax], 0
je 0x4207cd
mov edx, dword [ecx + 0x30]
cmp dword [edx], 0
jle 0x4207cd
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x4207d4
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x4207de
mov byte [esi + 9], al
jmp 0x4207e5
mov dword [esi + 4], 0
mov byte [esi + 8], 1
cmp byte [esi + 9], 0x45
jne 0x420c04
mov eax, dword [esp + 0x18]
mov byte [eax], 0x65
mov ecx, dword [esi + 4]
add eax, 1
test ecx, ecx
mov dword [esp + 0x18], eax
je 0x42083c
mov edx, dword [ecx + 0x20]
cmp dword [edx], 0
je 0x42082a
mov eax, dword [ecx + 0x30]
cmp dword [eax], 0
jle 0x42082a
add dword [eax], 0xffffffff
mov ecx, dword [ecx + 0x20]
mov eax, dword [ecx]
lea edx, [eax + 1]
mov dword [ecx], edx
movzx eax, byte [eax]
jmp 0x420831
mov eax, dword [ecx]
mov edx, dword [eax + 0x14]
call edx
cmp eax, 0xffffffff
je 0x42083c
mov byte [esi + 8], 0
jmp 0x420847
mov dword [esi + 4], 0
mov byte [esi + 8], 1
xor ebx, ebx
xor edi, edi
cmp byte [esi + 8], 0
mov byte [esp + 0x17], 0
jne 0x42088a
mov ecx, dword [esi + 4]
cmp ecx, ebx
je 0x420883
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x420872
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x420872
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x420879
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x420883
mov byte [esi + 9], al
jmp 0x420886
mov dword [esi + 4], ebx
mov byte [esi + 8], 1
mov ebp, dword [esp + 0x20]
cmp byte [ebp + 8], 0
jne 0x4208c8
mov ecx, dword [ebp + 4]
cmp ecx, ebx
je 0x4208c1
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x4208b0
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x4208b0
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x4208b7
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x4208c1
mov byte [ebp + 9], al
jmp 0x4208c4
mov dword [ebp + 4], ebx
mov byte [ebp + 8], 1
mov ecx, dword [esi + 4]
cmp ecx, ebx
jne 0x4208dc
cmp dword [ebp + 4], ebx
je 0x4209fb
cmp ecx, ebx
je 0x4208e5
cmp dword [ebp + 4], ebx
jne 0x4209fb
cmp byte [esi + 8], 0
jne 0x42091c
cmp ecx, ebx
je 0x420915
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x420904
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x420904
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x42090b
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x420915
mov byte [esi + 9], al
jmp 0x420918
mov dword [esi + 4], ebx
mov byte [esi + 8], 1
cmp byte [esi + 9], 0x2b
jne 0x42096f
mov ebp, dword [esp + 0x18]
mov byte [ebp], 0x2b
mov ecx, dword [esi + 4]
add ebp, 1
cmp ecx, ebx
mov dword [esp + 0x18], ebp
je 0x420963
mov edx, dword [ecx + 0x20]
cmp dword [edx], ebx
je 0x4209e5
mov eax, dword [ecx + 0x30]
cmp dword [eax], ebx
jle 0x4209e5
add dword [eax], 0xffffffff
mov ecx, dword [ecx + 0x20]
mov eax, dword [ecx]
lea edx, [eax + 1]
mov dword [ecx], edx
movzx eax, byte [eax]
jmp 0x4209ec
mov dword [esi + 4], ebx
mov byte [esi + 8], 1
jmp 0x420a00
cmp byte [esi + 8], 0
jne 0x4209a9
mov ecx, dword [esi + 4]
cmp ecx, ebx
je 0x4209a2
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x420991
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x420991
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x420998
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x4209a2
mov byte [esi + 9], al
jmp 0x4209a5
mov dword [esi + 4], ebx
mov byte [esi + 8], 1
cmp byte [esi + 9], 0x2d
jne 0x4209fb
mov ebp, dword [esp + 0x18]
mov byte [ebp], 0x2d
mov ecx, dword [esi + 4]
add ebp, 1
cmp ecx, ebx
mov dword [esp + 0x18], ebp
je 0x420963
mov edx, dword [ecx + 0x20]
cmp dword [edx], ebx
je 0x4209e5
mov eax, dword [ecx + 0x30]
cmp dword [eax], ebx
jle 0x4209e5
add dword [eax], 0xffffffff
mov ecx, dword [ecx + 0x20]
mov eax, dword [ecx]
lea edx, [eax + 1]
mov dword [ecx], edx
movzx eax, byte [eax]
jmp 0x4209ec
mov eax, dword [ecx]
mov edx, dword [eax + 0x14]
call edx
cmp eax, 0xffffffff
je 0x420963
mov byte [esi + 8], 0
jmp 0x420a00
mov ebp, dword [esp + 0x18]
nop
cmp byte [esi + 8], 0
jne 0x420a3a
mov ecx, dword [esi + 4]
cmp ecx, ebx
je 0x420a33
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x420a22
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x420a22
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x420a29
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x420a33
mov byte [esi + 9], al
jmp 0x420a36
mov dword [esi + 4], ebx
mov byte [esi + 8], 1
mov edx, dword [esp + 0x20]
cmp byte [edx + 8], 0
jne 0x420a7c
mov ecx, dword [edx + 4]
cmp ecx, ebx
je 0x420a75
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x420a60
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x420a60
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x420a67
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
mov edx, dword [esp + 0x20]
je 0x420a75
mov byte [edx + 9], al
jmp 0x420a78
mov dword [edx + 4], ebx
mov byte [edx + 8], 1
mov ecx, dword [esi + 4]
cmp ecx, ebx
jne 0x420ada
cmp dword [edx + 4], ebx
jne 0x420adf
cmp byte [esp + 0x17], 0
je 0x420a9a
mov byte [ebp], 0x30
add ebp, 1
mov dword [esp + 0x18], ebp
mov ecx, dword [esp + 0x20]
push ecx
push esi
call fcn.0041b4b0
add esp, 8
test al, al
je 0x420c04
cmp byte [esi + 8], 0
jne 0x420b49
mov ecx, dword [esi + 4]
cmp ecx, ebx
je 0x420b42
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x420b31
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x420b31
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x420b38
cmp dword [edx + 4], ebx
jne 0x420a88
cmp byte [esi + 8], 0
jne 0x420b16
cmp ecx, ebx
je 0x420b0f
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x420afe
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x420afe
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x420b05
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x420b0f
mov byte [esi + 9], al
jmp 0x420b12
mov dword [esi + 4], ebx
mov byte [esi + 8], 1
cmp byte [esi + 9], 0x30
jne 0x420a88
mov ecx, esi
mov byte [esp + 0x17], 1
call fcn.0041b3a0
jmp 0x420a00
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x420b42
mov byte [esi + 9], al
jmp 0x420b45
mov dword [esi + 4], ebx
mov byte [esi + 8], 1
cmp byte [esi + 9], 0x30
jl 0x420c00
cmp byte [esi + 8], 0
jne 0x420b8d
mov ecx, dword [esi + 4]
cmp ecx, ebx
je 0x420b86
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x420b75
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x420b75
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x420b7c
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x420b86
mov byte [esi + 9], al
jmp 0x420b89
mov dword [esi + 4], ebx
mov byte [esi + 8], 1
cmp byte [esi + 9], 0x39
jg 0x420c00
cmp edi, 8
jge 0x420bde
cmp byte [esi + 8], 0
jne 0x420bd2
mov ecx, dword [esi + 4]
cmp ecx, ebx
je 0x420bcb
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x420bba
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x420bba
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x420bc1
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x420bcb
mov byte [esi + 9], al
jmp 0x420bce
mov dword [esi + 4], ebx
mov byte [esi + 8], 1
mov cl, byte [esi + 9]
mov byte [ebp], cl
add ebp, 1
add edi, 1
mov ecx, esi
mov byte [esp + 0x17], 1
call fcn.0041b3a0
mov edx, dword [esp + 0x20]
push edx
push esi
call fcn.0041b4b0
add esp, 8
test al, al
jne 0x420ab0
mov dword [esp + 0x18], ebp
cmp byte [esp + 0x1f], 0
jne 0x420c12
cmp byte [esp + 0x17], 0
jne 0x420c18
mov eax, dword [esp + 0x30]
jmp 0x420c1c
mov eax, dword [esp + 0x18]
cmp dword [esp + 0x68], 0x10
mov byte [eax], 0
jb 0x420c33
mov eax, dword [esp + 0x54]
push eax
call fcn.00451909
add esp, 4
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x70]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x58]
xor ecx, esp
call fcn.0045b0da
add esp, 0x68
ret