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

Disassembly:
push 0xffffffffffffffff
push 0x6b42cf
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.0060d180
lea ecx, [esp + 0x28]
mov byte [esp + 0x1c8], 1
call fcn.0060fe70
push 0x6c
push 0xf1
push 0x99
lea ecx, [esp + 0x1ac]
mov byte [esp + 0x1d4], 2
call fcn.00548440
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 0x70c07c
lea ecx, [esp + 0x38]
mov byte [esp + 0x1d0], 4
call fcn.0060ff10
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 0x4e4f4a
lea ecx, [esp + 0x30]
mov byte [esp + 0x1c8], 4
call fcn.0060ffb0
mov eax, dword [esp + 0x18]
cmp eax, ebx
je 0x4e58ed
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x4e58e4
cmp al, 0xff
je 0x4e58e4
dec al
mov byte [ecx], al
jmp 0x4e58ed
push 5
lea ecx, [esp + 0x1d4]
call fcn.00610190
push ecx
mov byte [esp + 0x17], al
mov ecx, esp
mov dword [esp + 0x148], esp
push 6
push 0x703764
call fcn.0060ff10
lea eax, [esp + 0x150]
push eax
call fcn.0060f170
add esp, 8
mov esi, eax
mov eax, dword [esi + 8]
mov edi, dword [0x6ce1fc]
mov ebp, eax
mov byte [esp + 0x1c8], 6
cmp edi, ebp
jae 0x4e4f9d
mov ebp, edi
lea ecx, [esp + 0x14]
cmp ecx, esi
jne 0x4e500f
cmp dword [esp + 0x1c], ebp
jae 0x4e4fb0
call fcn.00697ab7
lea ecx, [esp + 0x14]
call fcn.00414980
mov eax, dword [esp + 0x1c]
sub eax, ebp
cmp eax, edi
jae 0x4e4fc5
mov edi, eax
cmp edi, ebx
jbe 0x4e4fff
mov edx, dword [esp + 0x18]
sub eax, edi
push eax
lea ecx, [edx + ebp]
lea edx, [ecx + edi]
push edx
push ecx
call fcn.00698020
mov esi, dword [esp + 0x28]
add esp, 0xc
sub esi, edi
lea ecx, [esp + 0x14]
push ebx
push esi
call fcn.00414210
test al, al
je 0x4e4fff
push esi
lea ecx, [esp + 0x18]
call fcn.004141f0
push ebx
push ebx
lea ecx, [esp + 0x1c]
call fcn.004140d0
jmp 0x4e5096
cmp ebp, ebx
jbe 0x4e505c
cmp ebp, eax
jne 0x4e505c
mov eax, dword [esi + 4]
cmp eax, ebx
jne 0x4e5023
mov eax, 0x6ce1f8
cmp byte [eax - 1], 0xfe
jae 0x4e505c
push 1
lea ecx, [esp + 0x18]
call fcn.004138a0
mov eax, dword [esi + 4]
cmp eax, ebx
jne 0x4e5040
mov eax, 0x6ce1f8
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 0x4e5096
push 1
push ebp
lea ecx, [esp + 0x1c]
call fcn.00414210
test al, al
je 0x4e5096
mov esi, dword [esi + 4]
cmp esi, ebx
jne 0x4e5078
mov esi, 0x6ce1f8
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.004141f0
mov eax, dword [esp + 0x150]
mov byte [esp + 0x1c8], 5
cmp eax, ebx
je 0x4e50c6
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x4e50bd
cmp al, 0xff
je 0x4e50bd
dec al
mov byte [ecx], al
jmp 0x4e50c6
push ecx
call fcn.00697880
add esp, 4
mov al, byte [esp + 0x13]
cmp al, 0x60
jb 0x4e5950
cmp al, 0x68
ja 0x4e5950
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.0060fe80
mov ecx, dword [0x71b93c]
call fcn.006206f0
mov esi, dword [esp + 0x2c]
cmp si, bx
je 0x4e5673
cmp byte [0x71bb5c], bl
je 0x4e5130
push ecx
mov ecx, esp
mov dword [esp + 0x28], esp
push 0xb
push 0x70c1c0
call fcn.0060ff10
jmp 0x4e5185
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.00548ea0
lea ecx, [esp + 0x1a0]
call fcn.0060d330
push ecx
lea ecx, [esp + 0x180]
mov eax, esp
mov dword [esp + 0x28], esp
push eax
call fcn.0060d6b0
lea ecx, [esp + 0x2c]
call fcn.006101a0
lea ecx, [esp + 0x28]
call fcn.00610330
test ax, ax
jle 0x4e586e
cmp si, 1
jne 0x4e532e
push ecx
mov ecx, esp
mov dword [esp + 0x28], esp
push 6
push 0x703784
call fcn.0060ff10
lea ecx, [esp + 0x170]
push ecx
call fcn.0060f170
add esp, 8
mov esi, eax
mov eax, dword [esi + 8]
mov edi, dword [0x6ce1fc]
mov ebp, eax
mov byte [esp + 0x1c8], 7
cmp edi, ebp
jae 0x4e51e8
mov ebp, edi
lea edx, [esp + 0x14]
cmp edx, esi
jne 0x4e5259
cmp dword [esp + 0x1c], ebp
jae 0x4e51fb
call fcn.00697ab7
lea ecx, [esp + 0x14]
call fcn.00414980
mov eax, dword [esp + 0x1c]
sub eax, ebp
cmp eax, edi
jae 0x4e5210
mov edi, eax
cmp edi, ebx
jbe 0x4e5249
mov ecx, dword [esp + 0x18]
sub eax, edi
add ecx, ebp
push eax
lea edx, [ecx + edi]
push edx
push ecx
call fcn.00698020
mov esi, dword [esp + 0x28]
add esp, 0xc
sub esi, edi
lea ecx, [esp + 0x14]
push ebx
push esi
call fcn.00414210
test al, al
je 0x4e5249
push esi
lea ecx, [esp + 0x18]
call fcn.004141f0
push ebx
push ebx
lea ecx, [esp + 0x1c]
call fcn.004140d0
jmp 0x4e52e0
cmp ebp, ebx
jbe 0x4e52a6
cmp ebp, eax
jne 0x4e52a6
mov eax, dword [esi + 4]
cmp eax, ebx
jne 0x4e526d
mov eax, 0x6ce1f8
cmp byte [eax - 1], 0xfe
jae 0x4e52a6
push 1
lea ecx, [esp + 0x18]
call fcn.004138a0
mov eax, dword [esi + 4]
cmp eax, ebx
jne 0x4e528a
mov eax, 0x6ce1f8
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 0x4e52e0
push 1
push ebp
lea ecx, [esp + 0x1c]
call fcn.00414210
test al, al
je 0x4e52e0
mov esi, dword [esi + 4]
cmp esi, ebx
jne 0x4e52c2
mov esi, 0x6ce1f8
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.004141f0
mov eax, dword [esp + 0x170]
mov byte [esp + 0x1c8], 5
cmp eax, ebx
je 0x4e5310
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x4e5307
cmp al, 0xff
je 0x4e5307
dec al
mov byte [ecx], al
jmp 0x4e5310
push ecx
call fcn.00697880
add esp, 4
mov dword [esp + 0x170], ebx
mov dword [esp + 0x174], ebx
mov dword [esp + 0x178], ebx
mov byte [esp + 0x13], bl
jmp 0x4e566f
cmp si, 2
jne 0x4e54be
push ecx
mov ecx, esp
mov dword [esp + 0x28], esp
push 6
push 0x70377c
call fcn.0060ff10
lea eax, [esp + 0x160]
push eax
call fcn.0060f170
add esp, 8
mov esi, eax
mov eax, dword [esi + 8]
mov edi, dword [0x6ce1fc]
mov ebp, eax
mov byte [esp + 0x1c8], 8
cmp edi, ebp
jae 0x4e5376
mov ebp, edi
lea ecx, [esp + 0x14]
cmp ecx, esi
jne 0x4e53e8
cmp dword [esp + 0x1c], ebp
jae 0x4e5389
call fcn.00697ab7
lea ecx, [esp + 0x14]
call fcn.00414980
mov eax, dword [esp + 0x1c]
sub eax, ebp
cmp eax, edi
jae 0x4e539e
mov edi, eax
cmp edi, ebx
jbe 0x4e53d8
mov edx, dword [esp + 0x18]
sub eax, edi
push eax
lea ecx, [edx + ebp]
lea edx, [ecx + edi]
push edx
push ecx
call fcn.00698020
mov esi, dword [esp + 0x28]
add esp, 0xc
sub esi, edi
lea ecx, [esp + 0x14]
push ebx
push esi
call fcn.00414210
test al, al
je 0x4e53d8
push esi
lea ecx, [esp + 0x18]
call fcn.004141f0
push ebx
push ebx
lea ecx, [esp + 0x1c]
call fcn.004140d0
jmp 0x4e5470
cmp ebp, ebx
jbe 0x4e5435
cmp ebp, eax
jne 0x4e5435
mov eax, dword [esi + 4]
cmp eax, ebx
jne 0x4e53fc
mov eax, 0x6ce1f8
cmp byte [eax - 1], 0xfe
jae 0x4e5435
push 1
lea ecx, [esp + 0x18]
call fcn.004138a0
mov eax, dword [esi + 4]
cmp eax, ebx
jne 0x4e5419
mov eax, 0x6ce1f8
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 0x4e5470
push 1
push ebp
lea ecx, [esp + 0x1c]
call fcn.00414210
test al, al
je 0x4e5470
mov esi, dword [esi + 4]
cmp esi, ebx
jne 0x4e5451
mov esi, 0x6ce1f8
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 0x4e54a0
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x4e5497
cmp al, 0xff
je 0x4e5497
dec al
mov byte [ecx], al
jmp 0x4e54a0
push ecx
call fcn.00697880
add esp, 4
mov dword [esp + 0x160], ebx
mov dword [esp + 0x164], ebx
mov dword [esp + 0x168], ebx
mov byte [esp + 0x13], bl
jmp 0x4e566f
cmp si, 3
jne 0x4e566f
push ecx
mov ecx, esp
mov dword [esp + 0x28], esp
push 6
push 0x703764
call fcn.0060ff10
lea edx, [esp + 0x150]
push edx
call fcn.0060f170
add esp, 8
mov esi, eax
mov eax, dword [esi + 8]
mov edi, dword [0x6ce1fc]
mov ebp, eax
mov byte [esp + 0x1c8], 9
cmp edi, ebp
jae 0x4e5506
mov ebp, edi
lea ecx, [esp + 0x14]
cmp ecx, esi
jne 0x4e5578
cmp dword [esp + 0x1c], ebp
jae 0x4e5519
call fcn.00697ab7
lea ecx, [esp + 0x14]
call fcn.00414980
mov eax, dword [esp + 0x1c]
sub eax, ebp
cmp eax, edi
jae 0x4e552e
mov edi, eax
cmp edi, ebx
jbe 0x4e5568
mov edx, dword [esp + 0x18]
sub eax, edi
push eax
lea ecx, [edx + ebp]
lea edx, [ecx + edi]
push edx
push ecx
call fcn.00698020
mov esi, dword [esp + 0x28]
add esp, 0xc
sub esi, edi
lea ecx, [esp + 0x14]
push ebx
push esi
call fcn.00414210
test al, al
je 0x4e5568
push esi
lea ecx, [esp + 0x18]
call fcn.004141f0
push ebx
push ebx
lea ecx, [esp + 0x1c]
call fcn.004140d0
jmp 0x4e5625
cmp ebp, ebx
jbe 0x4e55eb
cmp ebp, eax
jne 0x4e55eb
mov eax, dword [esi + 4]
cmp eax, ebx
jne 0x4e558c
mov eax, 0x6ce1f8
cmp byte [eax - 1], 0xfe
jae 0x4e55eb
mov eax, dword [esp + 0x18]
cmp eax, ebx
je 0x4e55b7
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x4e55ae
cmp al, 0xff
je 0x4e55ae
dec al
mov byte [ecx], al
jmp 0x4e55b7
push ecx
call fcn.00697880
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 0x4e55cf
mov eax, 0x6ce1f8
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 0x4e5625
push 1
push ebp
lea ecx, [esp + 0x1c]
call fcn.00414210
test al, al
je 0x4e5625
mov esi, dword [esi + 4]
cmp esi, ebx
jne 0x4e5607
mov esi, 0x6ce1f8
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.004141f0
mov eax, dword [esp + 0x150]
mov byte [esp + 0x1c8], 5
cmp eax, ebx
je 0x4e5655
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x4e564c
cmp al, 0xff
je 0x4e564c
dec al
mov byte [ecx], al
jmp 0x4e5655
push ecx
call fcn.00697880
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 0x703784
call fcn.0060ff10
mov ecx, dword [0x71b93c]
call fcn.00620870
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x2c], esp
push 6
push 0x70377c
call fcn.0060ff10
mov ecx, dword [0x71b93c]
call fcn.00620870
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x2c], esp
push 6
push 0x703774
call fcn.0060ff10
mov ecx, dword [0x71b93c]
call fcn.00620870
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 [0x6ce1fc]
mov edi, eax
cmp esi, edi
mov dword [esp + 0x34], edi
jae 0x4e5709
mov edi, esi
mov dword [esp + 0x34], edi
lea edx, [esp + 0x24]
cmp ebp, edx
jne 0x4e576b
cmp edi, ebx
jbe 0x4e571a
call fcn.00697ab7
mov ecx, ebp
call fcn.00414980
mov eax, dword [ebp + 8]
sub eax, edi
cmp eax, esi
jae 0x4e572c
mov esi, eax
cmp esi, ebx
jbe 0x4e575f
mov ecx, dword [ebp + 4]
sub eax, esi
add ecx, edi
push eax
lea edx, [esi + ecx]
push edx
push ecx
call fcn.00698020
mov edi, dword [ebp + 8]
add esp, 0xc
sub edi, esi
mov ecx, ebp
push ebx
push edi
call fcn.00414210
test al, al
je 0x4e575f
push edi
mov ecx, ebp
call fcn.004141f0
mov ecx, ebp
call fcn.00414980
jmp 0x4e57f1
cmp edi, ebx
jbe 0x4e57b7
cmp edi, eax
jne 0x4e57b7
mov eax, dword [esp + 0x28]
cmp eax, ebx
jne 0x4e5780
mov eax, 0x6ce1f8
cmp byte [eax - 1], 0xfe
jae 0x4e57b7
mov dword [ebp + 4], ebx
mov dword [ebp + 8], ebx
mov dword [ebp + 0xc], ebx
mov eax, dword [esp + 0x28]
cmp eax, ebx
jne 0x4e579c
mov eax, 0x6ce1f8
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 0x4e57f1
push 1
push edi
mov ecx, ebp
call fcn.00414210
test al, al
je 0x4e57f1
mov esi, dword [esp + 0x28]
cmp esi, ebx
jne 0x4e57d2
mov esi, 0x6ce1f8
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.004141f0
push ecx
mov byte [esp + 0x1dc], 0xb
mov ecx, esp
mov dword [esp + 0x38], esp
push 6
push 0x70379c
call fcn.0060ff10
mov ecx, dword [0x71b93c]
mov byte [esp + 0x1dc], 5
call fcn.006208f0
mov ecx, dword [0x71b93c]
call fcn.00620cd0
movsx eax, ax
sub eax, ebx
je 0x4e5861
dec eax
je 0x4e5854
dec eax
jne 0x4e50e7
mov al, byte [esp + 0x13]
mov dword [esp + 0x2c], 3
cmp al, bl
jne 0x4e5950
jmp 0x4e50e7
mov dword [esp + 0x2c], 2
jmp 0x4e50e7
mov dword [esp + 0x2c], 1
jmp 0x4e50e7
push ebx
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x154], esp
push 6
push 0x7037f4
call fcn.0060ff10
push ecx
mov byte [esp + 0x1d8], 0xa
mov ecx, esp
mov dword [esp + 0x154], esp
push 6
push 0x703840
call fcn.0060ff10
mov ecx, 0x71b930
mov byte [esp + 0x1d8], 5
call fcn.006115e0
lea ecx, [esp + 0x30]
mov byte [esp + 0x1c8], 4
call fcn.0060ffb0
mov eax, dword [esp + 0x18]
cmp eax, ebx
je 0x4e58ed
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x4e58e4
cmp al, 0xff
je 0x4e58e4
dec al
mov byte [ecx], al
jmp 0x4e58ed
push ecx
call fcn.00697880
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.00548470
lea ecx, [esp + 0x28]
mov byte [esp + 0x1c8], 1
call fcn.0060ffb0
lea ecx, [esp + 0x17c]
mov byte [esp + 0x1c8], bl
call fcn.0060d280
lea ecx, [esp + 0x1d0]
mov dword [esp + 0x1c8], 0xffffffff
call fcn.0060ffb0
xor ax, ax
jmp 0x4e59e5
lea ecx, [esp + 0x30]
mov byte [esp + 0x1c8], 4
call fcn.0060ffb0
mov eax, dword [esp + 0x18]
cmp eax, ebx
je 0x4e5986
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x4e597d
cmp al, 0xff
je 0x4e597d
dec al
mov byte [ecx], al
jmp 0x4e5986
push ecx
call fcn.00697880
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.00548470
lea ecx, [esp + 0x28]
mov byte [esp + 0x1c8], 1
call fcn.0060ffb0
lea ecx, [esp + 0x17c]
mov byte [esp + 0x1c8], bl
call fcn.0060d280
lea ecx, [esp + 0x1d0]
mov dword [esp + 0x1c8], 0xffffffff
call fcn.0060ffb0
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