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

Disassembly:
push 0xffffffffffffffff
push 0x6c3b3f
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x1b0
push ebx
push ebp
push esi
push edi
mov esi, ecx
xor ebx, ebx
lea ecx, [esp + 0x17c]
mov dword [esp + 0x1c8], ebx
mov dword [esp + 0x2c], ebx
call fcn.0061aaa0
lea ecx, [esp + 0x28]
mov byte [esp + 0x1c8], 1
call fcn.0061d780
push 0x6c
push 0xf1
push 0x99
lea ecx, [esp + 0x1ac]
mov byte [esp + 0x1d4], 2
call fcn.00555f00
mov al, byte [esp + 0x13]
mov dword [esp + 0x18], ebx
mov byte [esp + 0x14], al
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
push 6
push 0x71c1fc
lea ecx, [esp + 0x38]
mov byte [esp + 0x1d0], 4
call fcn.0061d820
mov cl, 0xae
mov al, 0x11
mov byte [esp + 0x1c8], 5
mov byte [esp + 0x34], 8
mov byte [esp + 0x35], cl
mov byte [esp + 0x36], al
mov byte [esp + 0x37], 1
mov byte [esp + 0x38], 1
mov byte [esp + 0x39], bl
mov byte [esp + 0x3a], bl
mov byte [esp + 0x3b], bl
mov byte [esp + 0x3c], bl
mov byte [esp + 0x3d], bl
mov byte [esp + 0x3e], 8
mov byte [esp + 0x3f], cl
mov byte [esp + 0x40], al
mov byte [esp + 0x41], 1
mov byte [esp + 0x42], bl
mov byte [esp + 0x43], bl
mov byte [esp + 0x44], bl
mov byte [esp + 0x45], bl
mov byte [esp + 0x46], bl
mov byte [esp + 0x47], bl
mov byte [esp + 0x48], 8
mov byte [esp + 0x49], cl
mov byte [esp + 0x4a], al
mov byte [esp + 0x4b], bl
mov byte [esp + 0x4c], bl
mov byte [esp + 0x4d], bl
mov byte [esp + 0x4e], bl
mov byte [esp + 0x4f], bl
mov byte [esp + 0x50], bl
mov byte [esp + 0x51], bl
mov byte [esp + 0x52], 8
mov byte [esp + 0x53], cl
mov byte [esp + 0x54], al
mov byte [esp + 0x55], 2
mov byte [esp + 0x56], 2
mov byte [esp + 0x57], bl
mov byte [esp + 0x58], bl
mov byte [esp + 0x59], bl
mov byte [esp + 0x5a], bl
mov byte [esp + 0x5b], bl
mov byte [esp + 0x5c], 8
mov byte [esp + 0x5d], cl
mov byte [esp + 0x5e], al
mov byte [esp + 0x5f], 2
mov byte [esp + 0x60], bl
mov byte [esp + 0x61], bl
mov byte [esp + 0x62], bl
mov byte [esp + 0x63], bl
mov byte [esp + 0x64], bl
mov byte [esp + 0x65], bl
mov byte [esp + 0x66], 8
mov byte [esp + 0x67], cl
mov byte [esp + 0x68], al
mov byte [esp + 0x69], bl
mov byte [esp + 0x6a], bl
mov byte [esp + 0x6b], bl
mov byte [esp + 0x6c], bl
mov byte [esp + 0x6d], bl
mov byte [esp + 0x6e], bl
mov byte [esp + 0x6f], bl
mov byte [esp + 0x70], 8
mov byte [esp + 0x71], cl
mov byte [esp + 0x72], al
mov byte [esp + 0x73], 4
mov byte [esp + 0x74], 4
mov byte [esp + 0x75], bl
mov byte [esp + 0x76], bl
mov byte [esp + 0x77], bl
mov byte [esp + 0x78], bl
mov byte [esp + 0x79], bl
mov byte [esp + 0x7a], 8
mov byte [esp + 0x7b], cl
mov byte [esp + 0x7c], al
mov byte [esp + 0x7d], 4
mov byte [esp + 0x7e], bl
mov byte [esp + 0x7f], bl
mov byte [esp + 0x80], bl
mov byte [esp + 0x81], bl
mov byte [esp + 0x82], bl
mov byte [esp + 0x83], bl
mov byte [esp + 0x84], 8
mov byte [esp + 0x85], cl
mov byte [esp + 0x86], al
mov byte [esp + 0x87], bl
mov byte [esp + 0x88], bl
mov byte [esp + 0x89], bl
mov byte [esp + 0x8a], bl
mov byte [esp + 0x8b], bl
mov byte [esp + 0x8c], bl
mov byte [esp + 0x8d], bl
mov byte [esp + 0x8e], 8
mov byte [esp + 0x8f], cl
mov byte [esp + 0x90], al
mov byte [esp + 0x91], 8
mov byte [esp + 0x92], 8
mov byte [esp + 0x93], bl
mov byte [esp + 0x94], bl
mov byte [esp + 0x95], bl
mov byte [esp + 0x96], bl
mov byte [esp + 0x97], bl
mov byte [esp + 0x98], 8
mov byte [esp + 0x99], cl
mov byte [esp + 0x9a], al
mov byte [esp + 0x9b], 8
mov byte [esp + 0x9c], bl
mov byte [esp + 0x9d], bl
mov byte [esp + 0x9e], bl
mov byte [esp + 0x9f], bl
mov byte [esp + 0xa0], bl
mov byte [esp + 0xa1], bl
mov byte [esp + 0xa2], 8
mov byte [esp + 0xa3], cl
mov byte [esp + 0xa4], al
mov byte [esp + 0xa5], bl
mov byte [esp + 0xa6], bl
mov byte [esp + 0xa7], bl
mov byte [esp + 0xa8], bl
mov byte [esp + 0xa9], bl
mov byte [esp + 0xaa], bl
mov byte [esp + 0xab], bl
mov byte [esp + 0xac], 8
mov byte [esp + 0xad], cl
mov byte [esp + 0xae], al
mov dl, 0x10
mov byte [esp + 0xaf], dl
mov byte [esp + 0xb0], dl
mov byte [esp + 0xb9], dl
mov dl, 0x80
mov byte [esp + 0xcf], dl
mov byte [esp + 0xd9], dl
mov dl, 0x40
mov byte [esp + 0xb1], bl
mov byte [esp + 0xb2], bl
mov byte [esp + 0xb3], bl
mov byte [esp + 0xb4], bl
mov byte [esp + 0xb5], bl
mov byte [esp + 0xb6], 8
mov byte [esp + 0xb7], cl
mov byte [esp + 0xb8], al
mov byte [esp + 0xba], bl
mov byte [esp + 0xbb], bl
mov byte [esp + 0xbc], bl
mov byte [esp + 0xbd], bl
mov byte [esp + 0xbe], bl
mov byte [esp + 0xbf], bl
mov byte [esp + 0xc0], 8
mov byte [esp + 0xc1], cl
mov byte [esp + 0xc2], al
mov byte [esp + 0xc3], bl
mov byte [esp + 0xc4], bl
mov byte [esp + 0xc5], bl
mov byte [esp + 0xc6], bl
mov byte [esp + 0xc7], bl
mov byte [esp + 0xc8], bl
mov byte [esp + 0xc9], bl
mov byte [esp + 0xca], 8
mov byte [esp + 0xcb], cl
mov byte [esp + 0xcc], al
mov byte [esp + 0xcd], bl
mov byte [esp + 0xce], bl
mov byte [esp + 0xd0], 0xff
mov byte [esp + 0xd1], bl
mov byte [esp + 0xd2], bl
mov byte [esp + 0xd3], bl
mov byte [esp + 0xd4], 8
mov byte [esp + 0xd5], cl
mov byte [esp + 0xd6], al
mov byte [esp + 0xd7], bl
mov byte [esp + 0xd8], bl
mov byte [esp + 0xda], bl
mov byte [esp + 0xdb], bl
mov byte [esp + 0xdc], bl
mov byte [esp + 0xdd], bl
mov byte [esp + 0xde], 8
mov byte [esp + 0xdf], cl
mov byte [esp + 0xe0], al
mov byte [esp + 0xe1], bl
mov byte [esp + 0xe2], bl
mov byte [esp + 0xe3], bl
mov byte [esp + 0xe4], bl
mov byte [esp + 0xe5], bl
mov byte [esp + 0xe6], bl
mov byte [esp + 0xe7], bl
mov byte [esp + 0xe8], 8
mov byte [esp + 0xe9], cl
mov byte [esp + 0xea], al
mov byte [esp + 0xeb], bl
mov byte [esp + 0xec], bl
mov byte [esp + 0xed], dl
mov byte [esp + 0xee], bl
mov byte [esp + 0xef], 0xff
mov byte [esp + 0xf0], bl
mov byte [esp + 0xf1], bl
mov byte [esp + 0xf2], 8
mov byte [esp + 0xf3], cl
mov byte [esp + 0xf4], al
mov byte [esp + 0xf5], bl
mov byte [esp + 0xf6], bl
mov byte [esp + 0xf7], dl
mov byte [esp + 0xf8], bl
mov byte [esp + 0xf9], bl
mov byte [esp + 0xfa], bl
mov byte [esp + 0xfb], bl
mov byte [esp + 0xfc], 8
mov byte [esp + 0xfd], cl
mov byte [esp + 0x127], dl
mov byte [esp + 0x128], dl
mov byte [esp + 0x131], dl
mov edx, dword [esi]
mov byte [esp + 0x107], cl
mov byte [esp + 0x111], cl
mov byte [esp + 0x11b], cl
mov byte [esp + 0x125], cl
mov byte [esp + 0x12f], cl
mov byte [esp + 0x139], cl
mov ecx, esi
mov byte [esp + 0xfe], al
mov byte [esp + 0xff], bl
mov byte [esp + 0x100], bl
mov byte [esp + 0x101], bl
mov byte [esp + 0x102], bl
mov byte [esp + 0x103], bl
mov byte [esp + 0x104], bl
mov byte [esp + 0x105], bl
mov byte [esp + 0x106], 8
mov byte [esp + 0x108], al
mov byte [esp + 0x109], bl
mov byte [esp + 0x10a], bl
mov byte [esp + 0x10b], 0x20
mov byte [esp + 0x10c], bl
mov byte [esp + 0x10d], bl
mov byte [esp + 0x10e], bl
mov byte [esp + 0x10f], bl
mov byte [esp + 0x110], 8
mov byte [esp + 0x112], al
mov byte [esp + 0x113], bl
mov byte [esp + 0x114], bl
mov byte [esp + 0x115], 0x20
mov byte [esp + 0x116], bl
mov byte [esp + 0x117], bl
mov byte [esp + 0x118], bl
mov byte [esp + 0x119], bl
mov byte [esp + 0x11a], 8
mov byte [esp + 0x11c], al
mov byte [esp + 0x11d], bl
mov byte [esp + 0x11e], bl
mov byte [esp + 0x11f], bl
mov byte [esp + 0x120], bl
mov byte [esp + 0x121], bl
mov byte [esp + 0x122], bl
mov byte [esp + 0x123], bl
mov byte [esp + 0x124], 8
mov byte [esp + 0x126], al
mov byte [esp + 0x129], bl
mov byte [esp + 0x12a], bl
mov byte [esp + 0x12b], bl
mov byte [esp + 0x12c], bl
mov byte [esp + 0x12d], bl
mov byte [esp + 0x12e], 8
mov byte [esp + 0x130], al
mov byte [esp + 0x132], bl
mov byte [esp + 0x133], bl
mov byte [esp + 0x134], bl
mov byte [esp + 0x135], bl
mov byte [esp + 0x136], bl
mov byte [esp + 0x137], bl
mov byte [esp + 0x138], 8
mov byte [esp + 0x13a], al
mov byte [esp + 0x13b], bl
mov byte [esp + 0x13c], bl
mov byte [esp + 0x13d], bl
mov byte [esp + 0x13e], bl
mov byte [esp + 0x13f], bl
mov byte [esp + 0x140], bl
mov byte [esp + 0x141], bl
call dword [edx + 0x18]
test ax, ax
jne 0x4f283a
lea ecx, [esp + 0x30]
mov byte [esp + 0x1c8], 4
call fcn.0061d8c0
mov eax, dword [esp + 0x18]
cmp eax, ebx
je 0x4f31dd
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x4f31d4
cmp al, 0xff
je 0x4f31d4
dec al
mov byte [ecx], al
jmp 0x4f31dd
push 5
lea ecx, [esp + 0x1d4]
call fcn.0061daa0
push ecx
mov byte [esp + 0x17], al
mov ecx, esp
mov dword [esp + 0x148], esp
push 6
push 0x713764
call fcn.0061d820
lea eax, [esp + 0x150]
push eax
call fcn.0061ca80
add esp, 8
mov esi, eax
mov eax, dword [esi + 8]
mov edi, dword [0x6dd1fc]
mov ebp, eax
mov byte [esp + 0x1c8], 6
cmp edi, ebp
jae 0x4f288d
mov ebp, edi
lea ecx, [esp + 0x14]
cmp ecx, esi
jne 0x4f28ff
cmp dword [esp + 0x1c], ebp
jae 0x4f28a0
call fcn.006a6707
lea ecx, [esp + 0x14]
call fcn.00414b70
mov eax, dword [esp + 0x1c]
sub eax, ebp
cmp eax, edi
jae 0x4f28b5
mov edi, eax
cmp edi, ebx
jbe 0x4f28ef
mov edx, dword [esp + 0x18]
sub eax, edi
push eax
lea ecx, [edx + ebp]
lea edx, [ecx + edi]
push edx
push ecx
call fcn.006a6c70
mov esi, dword [esp + 0x28]
add esp, 0xc
sub esi, edi
lea ecx, [esp + 0x14]
push ebx
push esi
call fcn.00414230
test al, al
je 0x4f28ef
push esi
lea ecx, [esp + 0x18]
call fcn.00414210
push ebx
push ebx
lea ecx, [esp + 0x1c]
call fcn.004140f0
jmp 0x4f2986
cmp ebp, ebx
jbe 0x4f294c
cmp ebp, eax
jne 0x4f294c
mov eax, dword [esi + 4]
cmp eax, ebx
jne 0x4f2913
mov eax, 0x6dd1f8
cmp byte [eax - 1], 0xfe
jae 0x4f294c
push 1
lea ecx, [esp + 0x18]
call fcn.004138c0
mov eax, dword [esi + 4]
cmp eax, ebx
jne 0x4f2930
mov eax, 0x6dd1f8
mov dword [esp + 0x18], eax
mov ecx, dword [esi + 8]
mov dword [esp + 0x1c], ecx
mov esi, dword [esi + 0xc]
mov dword [esp + 0x20], esi
mov cl, byte [eax - 1]
inc cl
mov byte [eax - 1], cl
jmp 0x4f2986
push 1
push ebp
lea ecx, [esp + 0x1c]
call fcn.00414230
test al, al
je 0x4f2986
mov esi, dword [esi + 4]
cmp esi, ebx
jne 0x4f2968
mov esi, 0x6dd1f8
mov edi, dword [esp + 0x18]
mov ecx, ebp
mov eax, ecx
push ebp
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x18]
call fcn.00414210
mov eax, dword [esp + 0x150]
mov byte [esp + 0x1c8], 5
cmp eax, ebx
je 0x4f29b6
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x4f29ad
cmp al, 0xff
je 0x4f29ad
dec al
mov byte [ecx], al
jmp 0x4f29b6
push ecx
call fcn.006a64d0
add esp, 4
mov al, byte [esp + 0x13]
cmp al, 0x60
jb 0x4f3240
cmp al, 0x68
ja 0x4f3240
sub al, 0x60
mov byte [esp + 0x13], bl
mov byte [esp + 0x144], al
push ecx
lea edx, [esp + 0x1d4]
mov ecx, esp
mov dword [esp + 0x28], esp
push edx
call fcn.0061d790
mov ecx, dword [0x72baec]
call fcn.0062e250
mov esi, dword [esp + 0x2c]
cmp si, bx
je 0x4f2f63
cmp byte [0x72bd0c], bl
je 0x4f2a20
push ecx
mov ecx, esp
mov dword [esp + 0x28], esp
push 0xb
push 0x71c340
call fcn.0061d820
jmp 0x4f2a75
mov eax, dword [esp + 0x144]
sub esp, 0x24
and eax, 0xff
mov ecx, esp
movsx edx, si
lea eax, [eax + eax*2]
mov dword [esp + 0x48], esp
add eax, edx
push ebx
push 1
lea eax, [eax + eax*4]
lea edx, [esp + eax*2 + 0x56]
push edx
push ecx
lea ecx, [esp + 0x1d4]
call fcn.00556960
lea ecx, [esp + 0x1a0]
call fcn.0061ac40
push ecx
lea ecx, [esp + 0x180]
mov eax, esp
mov dword [esp + 0x28], esp
push eax
call fcn.0061afb0
lea ecx, [esp + 0x2c]
call fcn.0061dab0
lea ecx, [esp + 0x28]
call fcn.0061dc40
test ax, ax
jle 0x4f315e
cmp si, 1
jne 0x4f2c1e
push ecx
mov ecx, esp
mov dword [esp + 0x28], esp
push 6
push 0x713784
call fcn.0061d820
lea ecx, [esp + 0x170]
push ecx
call fcn.0061ca80
add esp, 8
mov esi, eax
mov eax, dword [esi + 8]
mov edi, dword [0x6dd1fc]
mov ebp, eax
mov byte [esp + 0x1c8], 7
cmp edi, ebp
jae 0x4f2ad8
mov ebp, edi
lea edx, [esp + 0x14]
cmp edx, esi
jne 0x4f2b49
cmp dword [esp + 0x1c], ebp
jae 0x4f2aeb
call fcn.006a6707
lea ecx, [esp + 0x14]
call fcn.00414b70
mov eax, dword [esp + 0x1c]
sub eax, ebp
cmp eax, edi
jae 0x4f2b00
mov edi, eax
cmp edi, ebx
jbe 0x4f2b39
mov ecx, dword [esp + 0x18]
sub eax, edi
add ecx, ebp
push eax
lea edx, [ecx + edi]
push edx
push ecx
call fcn.006a6c70
mov esi, dword [esp + 0x28]
add esp, 0xc
sub esi, edi
lea ecx, [esp + 0x14]
push ebx
push esi
call fcn.00414230
test al, al
je 0x4f2b39
push esi
lea ecx, [esp + 0x18]
call fcn.00414210
push ebx
push ebx
lea ecx, [esp + 0x1c]
call fcn.004140f0
jmp 0x4f2bd0
cmp ebp, ebx
jbe 0x4f2b96
cmp ebp, eax
jne 0x4f2b96
mov eax, dword [esi + 4]
cmp eax, ebx
jne 0x4f2b5d
mov eax, 0x6dd1f8
cmp byte [eax - 1], 0xfe
jae 0x4f2b96
push 1
lea ecx, [esp + 0x18]
call fcn.004138c0
mov eax, dword [esi + 4]
cmp eax, ebx
jne 0x4f2b7a
mov eax, 0x6dd1f8
mov dword [esp + 0x18], eax
mov ecx, dword [esi + 8]
mov dword [esp + 0x1c], ecx
mov esi, dword [esi + 0xc]
mov dword [esp + 0x20], esi
mov cl, byte [eax - 1]
inc cl
mov byte [eax - 1], cl
jmp 0x4f2bd0
push 1
push ebp
lea ecx, [esp + 0x1c]
call fcn.00414230
test al, al
je 0x4f2bd0
mov esi, dword [esi + 4]
cmp esi, ebx
jne 0x4f2bb2
mov esi, 0x6dd1f8
mov edi, dword [esp + 0x18]
mov ecx, ebp
mov edx, ecx
push ebp
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x18]
call fcn.00414210
mov eax, dword [esp + 0x170]
mov byte [esp + 0x1c8], 5
cmp eax, ebx
je 0x4f2c00
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x4f2bf7
cmp al, 0xff
je 0x4f2bf7
dec al
mov byte [ecx], al
jmp 0x4f2c00
push ecx
call fcn.006a64d0
add esp, 4
mov dword [esp + 0x170], ebx
mov dword [esp + 0x174], ebx
mov dword [esp + 0x178], ebx
mov byte [esp + 0x13], bl
jmp 0x4f2f5f
cmp si, 2
jne 0x4f2dae
push ecx
mov ecx, esp
mov dword [esp + 0x28], esp
push 6
push 0x71377c
call fcn.0061d820
lea eax, [esp + 0x160]
push eax
call fcn.0061ca80
add esp, 8
mov esi, eax
mov eax, dword [esi + 8]
mov edi, dword [0x6dd1fc]
mov ebp, eax
mov byte [esp + 0x1c8], 8
cmp edi, ebp
jae 0x4f2c66
mov ebp, edi
lea ecx, [esp + 0x14]
cmp ecx, esi
jne 0x4f2cd8
cmp dword [esp + 0x1c], ebp
jae 0x4f2c79
call fcn.006a6707
lea ecx, [esp + 0x14]
call fcn.00414b70
mov eax, dword [esp + 0x1c]
sub eax, ebp
cmp eax, edi
jae 0x4f2c8e
mov edi, eax
cmp edi, ebx
jbe 0x4f2cc8
mov edx, dword [esp + 0x18]
sub eax, edi
push eax
lea ecx, [edx + ebp]
lea edx, [ecx + edi]
push edx
push ecx
call fcn.006a6c70
mov esi, dword [esp + 0x28]
add esp, 0xc
sub esi, edi
lea ecx, [esp + 0x14]
push ebx
push esi
call fcn.00414230
test al, al
je 0x4f2cc8
push esi
lea ecx, [esp + 0x18]
call fcn.00414210
push ebx
push ebx
lea ecx, [esp + 0x1c]
call fcn.004140f0
jmp 0x4f2d60
cmp ebp, ebx
jbe 0x4f2d25
cmp ebp, eax
jne 0x4f2d25
mov eax, dword [esi + 4]
cmp eax, ebx
jne 0x4f2cec
mov eax, 0x6dd1f8
cmp byte [eax - 1], 0xfe
jae 0x4f2d25
push 1
lea ecx, [esp + 0x18]
call fcn.004138c0
mov eax, dword [esi + 4]
cmp eax, ebx
jne 0x4f2d09
mov eax, 0x6dd1f8
mov dword [esp + 0x18], eax
mov ecx, dword [esi + 8]
mov dword [esp + 0x1c], ecx
mov esi, dword [esi + 0xc]
mov dword [esp + 0x20], esi
mov cl, byte [eax - 1]
inc cl
mov byte [eax - 1], cl
jmp 0x4f2d60
push 1
push ebp
lea ecx, [esp + 0x1c]
call fcn.00414230
test al, al
je 0x4f2d60
mov esi, dword [esi + 4]
cmp esi, ebx
jne 0x4f2d41
mov esi, 0x6dd1f8
mov edi, dword [esp + 0x18]
mov ecx, ebp
mov eax, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x1c], ebp
mov byte [ecx + ebp], bl
mov eax, dword [esp + 0x160]
mov byte [esp + 0x1c8], 5
cmp eax, ebx
je 0x4f2d90
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x4f2d87
cmp al, 0xff
je 0x4f2d87
dec al
mov byte [ecx], al
jmp 0x4f2d90
push ecx
call fcn.006a64d0
add esp, 4
mov dword [esp + 0x160], ebx
mov dword [esp + 0x164], ebx
mov dword [esp + 0x168], ebx
mov byte [esp + 0x13], bl
jmp 0x4f2f5f
cmp si, 3
jne 0x4f2f5f
push ecx
mov ecx, esp
mov dword [esp + 0x28], esp
push 6
push 0x713764
call fcn.0061d820
lea edx, [esp + 0x150]
push edx
call fcn.0061ca80
add esp, 8
mov esi, eax
mov eax, dword [esi + 8]
mov edi, dword [0x6dd1fc]
mov ebp, eax
mov byte [esp + 0x1c8], 9
cmp edi, ebp
jae 0x4f2df6
mov ebp, edi
lea ecx, [esp + 0x14]
cmp ecx, esi
jne 0x4f2e68
cmp dword [esp + 0x1c], ebp
jae 0x4f2e09
call fcn.006a6707
lea ecx, [esp + 0x14]
call fcn.00414b70
mov eax, dword [esp + 0x1c]
sub eax, ebp
cmp eax, edi
jae 0x4f2e1e
mov edi, eax
cmp edi, ebx
jbe 0x4f2e58
mov edx, dword [esp + 0x18]
sub eax, edi
push eax
lea ecx, [edx + ebp]
lea edx, [ecx + edi]
push edx
push ecx
call fcn.006a6c70
mov esi, dword [esp + 0x28]
add esp, 0xc
sub esi, edi
lea ecx, [esp + 0x14]
push ebx
push esi
call fcn.00414230
test al, al
je 0x4f2e58
push esi
lea ecx, [esp + 0x18]
call fcn.00414210
push ebx
push ebx
lea ecx, [esp + 0x1c]
call fcn.004140f0
jmp 0x4f2f15
cmp ebp, ebx
jbe 0x4f2edb
cmp ebp, eax
jne 0x4f2edb
mov eax, dword [esi + 4]
cmp eax, ebx
jne 0x4f2e7c
mov eax, 0x6dd1f8
cmp byte [eax - 1], 0xfe
jae 0x4f2edb
mov eax, dword [esp + 0x18]
cmp eax, ebx
je 0x4f2ea7
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x4f2e9e
cmp al, 0xff
je 0x4f2e9e
dec al
mov byte [ecx], al
jmp 0x4f2ea7
push ecx
call fcn.006a64d0
add esp, 4
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov eax, dword [esi + 4]
cmp eax, ebx
jne 0x4f2ebf
mov eax, 0x6dd1f8
mov dword [esp + 0x18], eax
mov ecx, dword [esi + 8]
mov dword [esp + 0x1c], ecx
mov esi, dword [esi + 0xc]
mov dword [esp + 0x20], esi
mov cl, byte [eax - 1]
inc cl
mov byte [eax - 1], cl
jmp 0x4f2f15
push 1
push ebp
lea ecx, [esp + 0x1c]
call fcn.00414230
test al, al
je 0x4f2f15
mov esi, dword [esi + 4]
cmp esi, ebx
jne 0x4f2ef7
mov esi, 0x6dd1f8
mov edi, dword [esp + 0x18]
mov ecx, ebp
mov eax, ecx
push ebp
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x18]
call fcn.00414210
mov eax, dword [esp + 0x150]
mov byte [esp + 0x1c8], 5
cmp eax, ebx
je 0x4f2f45
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x4f2f3c
cmp al, 0xff
je 0x4f2f3c
dec al
mov byte [ecx], al
jmp 0x4f2f45
push ecx
call fcn.006a64d0
add esp, 4
mov dword [esp + 0x150], ebx
mov dword [esp + 0x154], ebx
mov dword [esp + 0x158], ebx
mov byte [esp + 0x13], 1
mov dword [esp + 0x2c], ebx
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x2c], esp
push 6
push 0x713784
call fcn.0061d820
mov ecx, dword [0x72baec]
call fcn.0062e3d0
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x2c], esp
push 6
push 0x71377c
call fcn.0061d820
mov ecx, dword [0x72baec]
call fcn.0062e3d0
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x2c], esp
push 6
push 0x713774
call fcn.0061d820
mov ecx, dword [0x72baec]
call fcn.0062e3d0
mov cl, byte [esp + 0x14]
sub esp, 0x10
mov ebp, esp
mov dword [esp + 0x158], esp
mov byte [ebp], cl
mov dword [ebp + 4], ebx
mov dword [ebp + 8], ebx
mov dword [ebp + 0xc], ebx
mov eax, dword [esp + 0x2c]
mov esi, dword [0x6dd1fc]
mov edi, eax
cmp esi, edi
mov dword [esp + 0x34], edi
jae 0x4f2ff9
mov edi, esi
mov dword [esp + 0x34], edi
lea edx, [esp + 0x24]
cmp ebp, edx
jne 0x4f305b
cmp edi, ebx
jbe 0x4f300a
call fcn.006a6707
mov ecx, ebp
call fcn.00414b70
mov eax, dword [ebp + 8]
sub eax, edi
cmp eax, esi
jae 0x4f301c
mov esi, eax
cmp esi, ebx
jbe 0x4f304f
mov ecx, dword [ebp + 4]
sub eax, esi
add ecx, edi
push eax
lea edx, [esi + ecx]
push edx
push ecx
call fcn.006a6c70
mov edi, dword [ebp + 8]
add esp, 0xc
sub edi, esi
mov ecx, ebp
push ebx
push edi
call fcn.00414230
test al, al
je 0x4f304f
push edi
mov ecx, ebp
call fcn.00414210
mov ecx, ebp
call fcn.00414b70
jmp 0x4f30e1
cmp edi, ebx
jbe 0x4f30a7
cmp edi, eax
jne 0x4f30a7
mov eax, dword [esp + 0x28]
cmp eax, ebx
jne 0x4f3070
mov eax, 0x6dd1f8
cmp byte [eax - 1], 0xfe
jae 0x4f30a7
mov dword [ebp + 4], ebx
mov dword [ebp + 8], ebx
mov dword [ebp + 0xc], ebx
mov eax, dword [esp + 0x28]
cmp eax, ebx
jne 0x4f308c
mov eax, 0x6dd1f8
mov dword [ebp + 4], eax
mov edx, dword [esp + 0x2c]
mov dword [ebp + 8], edx
mov ecx, dword [esp + 0x30]
mov dword [ebp + 0xc], ecx
mov cl, byte [eax - 1]
inc cl
mov byte [eax - 1], cl
jmp 0x4f30e1
push 1
push edi
mov ecx, ebp
call fcn.00414230
test al, al
je 0x4f30e1
mov esi, dword [esp + 0x28]
cmp esi, ebx
jne 0x4f30c2
mov esi, 0x6dd1f8
mov eax, dword [esp + 0x34]
mov edi, dword [ebp + 4]
mov ecx, eax
push eax
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, ebp
call fcn.00414210
push ecx
mov byte [esp + 0x1dc], 0xb
mov ecx, esp
mov dword [esp + 0x38], esp
push 6
push 0x71379c
call fcn.0061d820
mov ecx, dword [0x72baec]
mov byte [esp + 0x1dc], 5
call fcn.0062e450
mov ecx, dword [0x72baec]
call fcn.0062e830
movsx eax, ax
sub eax, ebx
je 0x4f3151
dec eax
je 0x4f3144
dec eax
jne 0x4f29d7
mov al, byte [esp + 0x13]
mov dword [esp + 0x2c], 3
cmp al, bl
jne 0x4f3240
jmp 0x4f29d7
mov dword [esp + 0x2c], 2
jmp 0x4f29d7
mov dword [esp + 0x2c], 1
jmp 0x4f29d7
push ebx
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x154], esp
push 6
push 0x7137f4
call fcn.0061d820
push ecx
mov byte [esp + 0x1d8], 0xa
mov ecx, esp
mov dword [esp + 0x154], esp
push 6
push 0x713840
call fcn.0061d820
mov ecx, 0x72bae0
mov byte [esp + 0x1d8], 5
call fcn.0061ef70
lea ecx, [esp + 0x30]
mov byte [esp + 0x1c8], 4
call fcn.0061d8c0
mov eax, dword [esp + 0x18]
cmp eax, ebx
je 0x4f31dd
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x4f31d4
cmp al, 0xff
je 0x4f31d4
dec al
mov byte [ecx], al
jmp 0x4f31dd
push ecx
call fcn.006a64d0
add esp, 4
lea ecx, [esp + 0x1a0]
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov byte [esp + 0x1c8], 2
call fcn.00555f30
lea ecx, [esp + 0x28]
mov byte [esp + 0x1c8], 1
call fcn.0061d8c0
lea ecx, [esp + 0x17c]
mov byte [esp + 0x1c8], bl
call fcn.0061ab90
lea ecx, [esp + 0x1d0]
mov dword [esp + 0x1c8], 0xffffffff
call fcn.0061d8c0
xor ax, ax
jmp 0x4f32d5
lea ecx, [esp + 0x30]
mov byte [esp + 0x1c8], 4
call fcn.0061d8c0
mov eax, dword [esp + 0x18]
cmp eax, ebx
je 0x4f3276
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x4f326d
cmp al, 0xff
je 0x4f326d
dec al
mov byte [ecx], al
jmp 0x4f3276
push ecx
call fcn.006a64d0
add esp, 4
lea ecx, [esp + 0x1a0]
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov byte [esp + 0x1c8], 2
call fcn.00555f30
lea ecx, [esp + 0x28]
mov byte [esp + 0x1c8], 1
call fcn.0061d8c0
lea ecx, [esp + 0x17c]
mov byte [esp + 0x1c8], bl
call fcn.0061ab90
lea ecx, [esp + 0x1d0]
mov dword [esp + 0x1c8], 0xffffffff
call fcn.0061d8c0
mov ax, 1
mov ecx, dword [esp + 0x1c0]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0x1bc
ret 4