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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x4c]
cmp eax, dword [ecx + 8]
jbe 0x4e0ba3
sub esp, 0xcc
mov eax, dword [esp + 0xe0]
mov dword [esp], eax
mov ecx, dword [esp + 0xe4]
mov dword [esp + 4], ecx
call fcn.004e1b00
mov eax, dword [esp + 8]
test eax, eax
jne 0x4dff43
mov ecx, dword [esp + 0xe0]
test ecx, ecx
je 0x4dff31
nop
movzx edx, byte [0xdc3668]
test dl, dl
je 0x4dff25
mov dword [0xdc366c], ecx
mov edx, dword [0xdd7ec0]
test edx, edx
jne 0x4dff0e
mov eax, dword [esp + 0xe4]
mov dword [0xdc3670], eax
mov dword [esp + 0xa4], ecx
mov dword [esp + 0xa8], eax
mov edx, dword [esp + 0xa4]
test edx, edx
je 0x4dff01
nop
movzx ebx, byte [edx + 0xf]
mov ebp, ebx
and ebx, 0x1f
xchg ebp, eax
test al, 0x20
xchg ebp, eax
jne 0x4dfc5a
or ebx, 0x80
mov ebp, eax
nop
mov esi, ebx
and ebx, 0x1f
cmp ebx, 0x16
je 0x4dfe9a
cmp ebx, 0x17
je 0x4dfe5b
mov ebx, 0xffffffff
test ebx, ebx
jge 0x4dfd45
mov dword [esp + 0xac], ecx
mov dword [esp + 0xb0], ebp
mov eax, dword [esp + 0xac]
test eax, eax
je 0x4dfd3c
lea ecx, [0xa5ace0]
mov ecx, dword [ecx + 0x80]
mov dword [esp], eax
call ecx
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov dword [esp], 0
lea edx, [0x993a32]
mov dword [esp + 4], edx
mov dword [esp + 8], 0x1a
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
call fcn.00443900
mov eax, dword [esp + 0x14]
mov dword [esp + 0x7c], eax
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x28], ecx
lea edx, [0x909320]
mov dword [esp], edx
call fcn.0040ae10
mov edi, dword [esp + 4]
mov eax, dword [esp + 0x28]
mov dword [edi + 4], eax
mov eax, dword [0xdd7ec0]
test eax, eax
jne 0x4dfd31
mov eax, dword [esp + 0x7c]
mov dword [edi], eax
lea eax, [0xa4d860]
mov dword [esp + 0xe8], eax
mov dword [esp + 0xec], edi
add esp, 0xcc
ret
mov eax, dword [esp + 0x7c]
call fcn.00456fe0
jmp 0x4dfd16
xor ecx, ecx
xor eax, eax
jmp 0x4dfca4
mov dword [esp + 0x24], esi
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x78], eax
mov dword [esp + 0x6c], edx
lea eax, [0x8ebd00]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ebx
call fcn.00440500
mov eax, dword [esp + 0xc]
mov dword [esp + 0xa0], eax
lea edi, [esp + 0xb4]
xor eax, eax
call fcn.004572aa
lea edi, [esp + 0xb4]
call fcn.004572aa
mov eax, dword [esp + 0xd8]
mov dword [esp + 0xb4], eax
mov eax, dword [esp + 0xdc]
mov dword [esp + 0xb8], eax
mov eax, dword [esp + 0xa0]
mov dword [esp + 0xbc], eax
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0xc0], ecx
mov dword [esp + 0xc4], ecx
mov edx, dword [esp + 0xd0]
mov dword [esp], edx
mov edx, dword [esp + 0xd4]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], ecx
call fcn.00496020
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x1c]
test ecx, ecx
je 0x4dfe17
mov dword [esp + 0xe8], ecx
mov dword [esp + 0xec], eax
add esp, 0xcc
ret
lea eax, [esp + 0xb4]
mov dword [esp], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x78]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x24]
mov dword [esp + 0xc], eax
call fcn.004e1010
mov dword [esp + 0xe8], 0
mov dword [esp + 0xec], 0
add esp, 0xcc
ret
mov dword [esp + 0x68], esi
mov dword [esp + 0x74], eax
mov dword [esp + 0x70], edx
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], esi
call fcn.004e0bb0
mov ebx, dword [esp + 0xc]
mov ecx, dword [esp + 0xe0]
mov ebp, dword [esp + 0xe4]
mov esi, dword [esp + 0x68]
mov eax, dword [esp + 0x74]
mov edx, dword [esp + 0x70]
jmp 0x4dfc79
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], esi
call fcn.004837a0
mov eax, dword [esp + 0x10]
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x9c], ecx
mov edx, dword [esp + 0x14]
mov dword [esp + 0x68], edx
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
call fcn.004e0bb0
mov ebx, dword [esp + 0xc]
mov ecx, dword [esp + 0xe0]
mov ebp, dword [esp + 0xe4]
mov esi, dword [esp + 0x68]
mov eax, dword [esp + 0xa0]
mov edx, dword [esp + 0x9c]
jmp 0x4dfc79
mov ebp, eax
xor ebx, ebx
xor eax, eax
xor edx, edx
jmp 0x4dfc5c
lea edi, [0xdc3670]
mov eax, dword [esp + 0xe4]
call fcn.00456fe0
jmp 0x4dfc26
mov eax, dword [esp + 0xe4]
jmp 0x4dfc26
mov ebp, dword [esp + 0xe4]
xor ebx, ebx
xor eax, eax
xor edx, edx
jmp 0x4dfc5c
mov dword [esp + 0x60], eax
lea ecx, [0x8ebd00]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00440500
mov eax, dword [esp + 0xc]
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0xd0]
mov dword [esp], ecx
mov ecx, dword [esp + 0xd4]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov ecx, dword [esp + 0x60]
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], ecx
call fcn.00496020
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x1c]
test ecx, ecx
jne 0x4e0afe
mov edx, dword [esp + 0xe0]
test edx, edx
je 0x4e0025
mov ebx, dword [edx + 8]
cmp ebx, 0x5fcadfef
ja 0x4e0566
cmp ebx, 0x2069b53f
jbe 0x4e0267
cmp ebx, 0x26b80717
jbe 0x4e00f8
cmp ebx, 0x30c31d62
jne 0x4e00ec
lea ebp, [0x8c5300]
cmp ebp, edx
jne 0x4e00d6
mov ebp, dword [esp + 0xe4]
mov esi, dword [ebp + 4]
mov edi, dword [ebp]
jne 0x4e0042
mov edx, dword [esp + 0x60]
mov ebx, dword [esp + 0xa0]
xor eax, eax
jmp 0x4e0014
xchg ebp, ebx
mov byte [edi + eax], bl
xchg ebp, ebx
inc eax
cmp eax, edx
jge 0x4e0025
movzx ebp, byte [eax + ebx]
cmp eax, esi
jb 0x4e000c
jmp 0x4e0b7f
mov dword [esp + 0xe8], 0
mov dword [esp + 0xec], 0
add esp, 0xcc
ret
cmp ebx, 0x382e7edf
jne 0x4e00ce
lea esi, [0x8c74c0]
cmp esi, edx
jne 0x4e00c2
mov esi, dword [ebp + 4]
mov edi, dword [ebp]
jne 0x4e0089
mov eax, dword [esp + 0x60]
cmp esi, eax
jle 0x4e0085
mov ecx, dword [esp + 0xa0]
cmp edi, ecx
je 0x4e0025
mov dword [esp], edi
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004579b0
jmp 0x4e0025
mov eax, esi
jmp 0x4e0068
cmp ebx, 0x5fcadfef
jne 0x4e0025
lea ebx, [0x8b5ac0]
cmp ebx, edx
jne 0x4e00bb
jne 0x4e0025
mov ecx, dword [esp + 0x60]
test ecx, ecx
jbe 0x4e0b94
mov eax, dword [esp + 0xa0]
movzx eax, byte [eax]
mov byte [ebp], al
jmp 0x4e0025
mov ebp, 0
jmp 0x4e009b
mov esi, 0
mov edi, 0
jmp 0x4e005e
cmp ebx, 0x5fcadfef
jmp 0x4e008f
mov ebp, dword [esp + 0xe4]
mov esi, 0
mov edi, 0
jmp 0x4dfffb
mov ebp, dword [esp + 0xe4]
jmp 0x4e0042
cmp ebx, 0x20e38ee7
jne 0x4e0255
lea ebp, [0x8c7400]
cmp ebp, edx
jne 0x4e023f
mov ebp, dword [esp + 0xe4]
mov esi, dword [ebp + 4]
mov edi, dword [ebp]
jne 0x4e01cf
mov dword [esp + 0x58], esi
mov dword [esp + 0x98], edi
mov edx, dword [esp + 0x60]
mov ebx, dword [esp + 0xdc]
mov ebp, dword [esp + 0xd8]
mov eax, dword [esp + 0xa0]
xor ecx, ecx
jmp 0x4e017c
mov edi, dword [esp + 0x98]
mov word [edi + ecx*2], ax
inc ecx
mov eax, dword [esp + 0x60]
mov ebx, dword [esp + 0xdc]
mov ebp, dword [esp + 0xd8]
mov esi, dword [esp + 0xa0]
mov eax, esi
mov edx, dword [esp + 0x60]
mov esi, dword [esp + 0x58]
cmp ecx, esi
jge 0x4e0025
mov dword [esp + 0x30], ecx
shl ecx, 1
cmp ecx, edx
ja 0x4e0b64
mov esi, dword [ebp + 0x20]
mov dword [esp], ebx
sub edx, ecx
mov dword [esp + 0x64], edx
neg edx
sar edx, 0x1f
and ecx, edx
add ecx, eax
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x64]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ecx
call esi
movzx eax, word [esp + 0x10]
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x58]
cmp ecx, edx
jb 0x4e014d
jmp 0x4e0b5b
cmp ebx, 0x26b80717
jne 0x4e0025
lea eax, [0x8b5a80]
cmp eax, edx
jne 0x4e0238
jne 0x4e0025
mov dword [esp + 0x94], ebp
mov eax, dword [esp + 0xd8]
mov eax, dword [eax + 0x28]
mov ecx, dword [esp + 0xdc]
mov dword [esp], ecx
mov ecx, dword [esp + 0xa0]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x60]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ecx
call eax
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x94]
mov dword [edx], ecx
mov dword [edx + 4], eax
jmp 0x4e0025
mov ebp, 0
jmp 0x4e01e5
mov ebp, dword [esp + 0xe4]
mov esi, 0
mov edi, 0
jmp 0x4e011f
cmp ebx, 0x26b80717
mov ebp, dword [esp + 0xe4]
jmp 0x4e01d5
cmp ebx, 0x1e2f74f8
jbe 0x4e0471
cmp ebx, 0x1f1d91d4
jne 0x4e045f
lea ebp, [0x8c7440]
cmp ebp, edx
jne 0x4e0449
mov ebp, dword [esp + 0xe4]
mov esi, dword [ebp + 4]
mov edi, dword [ebp]
jne 0x4e0349
mov dword [esp + 0x98], edi
mov dword [esp + 0x4c], esi
mov edx, dword [esp + 0x60]
mov ebx, dword [esp + 0xdc]
mov ebp, dword [esp + 0xd8]
mov eax, dword [esp + 0xa0]
xor ecx, ecx
jmp 0x4e02f6
mov edi, dword [esp + 0x98]
mov dword [edi + ecx*4], eax
inc ecx
mov eax, dword [esp + 0x60]
mov ebx, dword [esp + 0xdc]
mov ebp, dword [esp + 0xd8]
mov esi, dword [esp + 0xa0]
mov eax, esi
mov edx, dword [esp + 0x60]
mov esi, dword [esp + 0x4c]
cmp ecx, esi
jge 0x4e0025
mov dword [esp + 0x44], ecx
shl ecx, 2
cmp ecx, edx
ja 0x4e0b40
mov esi, dword [ebp + 0x24]
mov dword [esp], ebx
sub edx, ecx
mov dword [esp + 0x64], edx
neg edx
sar edx, 0x1f
and ecx, edx
add ecx, eax
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x64]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ecx
call esi
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x44]
mov edx, dword [esp + 0x4c]
cmp ecx, edx
jb 0x4e02c8
jmp 0x4e0b37
cmp ebx, 0x2069b53f
jne 0x4e0025
lea ebx, [0x8c7480]
cmp ebx, edx
jne 0x4e043a
mov edx, dword [ebp + 4]
mov ebx, dword [ebp]
jne 0x4e0025
mov dword [esp + 0x5c], edx
mov dword [esp + 0x98], ebx
mov ebp, dword [esp + 0x60]
mov esi, dword [esp + 0xdc]
mov edi, dword [esp + 0xd8]
mov eax, dword [esp + 0xa0]
xor ecx, ecx
jmp 0x4e03db
mov ebp, dword [esp + 0x98]
lea esi, [ebp + edx*8]
mov dword [esi], eax
mov dword [esi + 4], ecx
lea ecx, [edx + 1]
mov eax, dword [esp + 0x60]
mov edx, dword [esp + 0xdc]
mov esi, dword [esp + 0xd8]
mov edi, dword [esp + 0xa0]
mov eax, edi
mov edx, ebx
mov ebx, ebp
mov ebp, dword [esp + 0x60]
mov esi, dword [esp + 0xdc]
mov edi, dword [esp + 0xd8]
cmp ecx, edx
jge 0x4e0025
mov dword [esp + 0x38], ecx
shl ecx, 3
cmp ecx, ebp
ja 0x4e0b1c
mov edx, dword [edi + 0x28]
mov dword [esp], esi
sub ebp, ecx
mov dword [esp + 0x64], ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and ecx, ebp
add ecx, eax
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x64]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ecx
call edx
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x38]
mov ebx, dword [esp + 0x5c]
cmp edx, ebx
jb 0x4e0397
jmp 0x4e0b13
mov edx, 0
mov ebx, 0
jmp 0x4e0369
mov ebp, dword [esp + 0xe4]
mov edi, 0
mov esi, 0
jmp 0x4e029a
cmp ebx, 0x2069b53f
mov ebp, dword [esp + 0xe4]
jmp 0x4e034f
cmp ebx, 0xc66cd3
jne 0x4e055b
lea eax, [0x8bf2c0]
cmp eax, edx
jne 0x4e0551
mov eax, dword [esp + 0xe4]
je 0x4e050b
cmp ebx, 0x1e2f74f8
jne 0x4e0025
lea eax, [0x8bf300]
cmp eax, edx
jne 0x4e0504
mov eax, dword [esp + 0xe4]
jne 0x4e0025
mov dword [esp + 0x90], eax
mov eax, dword [esp + 0xd8]
mov eax, dword [eax + 0x28]
mov ecx, dword [esp + 0xdc]
mov dword [esp], ecx
mov ecx, dword [esp + 0xa0]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x60]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ecx
call eax
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x90]
mov dword [edx], ecx
mov dword [edx + 4], eax
jmp 0x4e0025
mov eax, 0
jmp 0x4e04b1
mov dword [esp + 0x88], eax
mov eax, dword [esp + 0xd8]
mov eax, dword [eax + 0x24]
mov ecx, dword [esp + 0xdc]
mov dword [esp], ecx
mov ecx, dword [esp + 0xa0]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x60]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ecx
call eax
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x88]
mov dword [ecx], eax
jmp 0x4e0025
mov eax, 0
jmp 0x4e0492
cmp ebx, 0x1e2f74f8
jmp 0x4e049a
cmp ebx, 0x8237d00c
jbe 0x4e0833
cmp ebx, 0x9ad926a8
jbe 0x4e06e0
cmp ebx, 0xa066c615
jne 0x4e05a1
lea ebp, [0x8b5a00]
cmp ebp, edx
jne 0x4e06d6
mov eax, dword [esp + 0xe4]
je 0x4e068e
cmp ebx, 0xe781e5b1
jne 0x4e0682
lea ebp, [0x8c2840]
cmp ebp, edx
jne 0x4e066c
mov ebp, dword [esp + 0xe4]
mov esi, dword [ebp + 4]
mov edi, dword [ebp]
jne 0x4e0601
mov edx, dword [esp + 0x60]
mov ebx, dword [esp + 0xa0]
xor eax, eax
jmp 0x4e05ec
xchg ebp, eax
test al, al
xchg ebp, eax
xchg ebp, ebx
setne bl
xchg ebp, ebx
xchg ebp, ebx
mov byte [edi + eax], bl
xchg ebp, ebx
inc eax
cmp eax, edx
jge 0x4e0025
movzx ebp, byte [eax + ebx]
cmp eax, esi
jb 0x4e05d9
jmp 0x4e0b86
cmp ebx, 0xee92f42e
jne 0x4e0025
lea eax, [0x8bf280]
cmp eax, edx
jne 0x4e0665
jne 0x4e0025
mov dword [esp + 0x80], ebp
mov eax, dword [esp + 0xd8]
mov eax, dword [eax + 0x20]
mov ecx, dword [esp + 0xdc]
mov dword [esp], ecx
mov ecx, dword [esp + 0xa0]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x60]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ecx
call eax
movzx eax, word [esp + 0x10]
mov ecx, dword [esp + 0x80]
mov word [ecx], ax
jmp 0x4e0025
mov ebp, 0
jmp 0x4e0617
mov ebp, dword [esp + 0xe4]
mov edi, 0
mov esi, 0
jmp 0x4e05c8
mov ebp, dword [esp + 0xe4]
jmp 0x4e0601
mov dword [esp + 0x84], eax
mov eax, dword [esp + 0xd8]
mov eax, dword [eax + 0x20]
mov ecx, dword [esp + 0xdc]
mov dword [esp], ecx
mov ecx, dword [esp + 0xa0]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x60]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ecx
call eax
movzx eax, word [esp + 0x10]
mov ecx, dword [esp + 0x84]
mov word [ecx], ax
jmp 0x4e0025
mov eax, 0
jmp 0x4e059b
cmp ebx, 0x88768e96
jne 0x4e0824
lea ebp, [0x8c52c0]
cmp ebp, edx
jne 0x4e080e
mov ebp, dword [esp + 0xe4]
mov esi, dword [ebp + 4]
mov edi, dword [ebp]
jne 0x4e07cd
mov dword [esp + 0x98], edi
mov dword [esp + 0x54], esi
mov edx, dword [esp + 0x60]
mov ebx, dword [esp + 0xdc]
mov ebp, dword [esp + 0xd8]
mov eax, dword [esp + 0xa0]
xor ecx, ecx
jmp 0x4e0772
mov edi, dword [esp + 0x98]
lea ebp, [edi + edx*8]
mov dword [ebp], ecx
mov dword [ebp + 4], eax
lea ecx, [edx + 1]
mov eax, dword [esp + 0x60]
mov edx, dword [esp + 0xdc]
mov ebp, dword [esp + 0xd8]
mov esi, dword [esp + 0xa0]
mov eax, esi
mov edx, dword [esp + 0x60]
mov ebx, dword [esp + 0xdc]
mov esi, dword [esp + 0x54]
cmp ecx, esi
jge 0x4e0025
mov dword [esp + 0x3c], ecx
shl ecx, 3
cmp ecx, edx
ja 0x4e0b2e
mov esi, dword [ebp + 0x28]
mov dword [esp], ebx
sub edx, ecx
mov dword [esp + 0x64], edx
neg edx
sar edx, 0x1f
and ecx, edx
add ecx, eax
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x64]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ecx
call esi
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x3c]
mov ebx, dword [esp + 0x54]
cmp edx, ebx
jb 0x4e0735
jmp 0x4e0b25
cmp ebx, 0x9ad926a8
jne 0x4e0025
lea ebx, [0x8bf340]
cmp ebx, edx
jne 0x4e0807
jne 0x4e0025
mov ecx, dword [esp + 0x60]
test ecx, ecx
jbe 0x4e0b8d
mov eax, dword [esp + 0xa0]
movzx eax, byte [eax]
mov byte [ebp], al
jmp 0x4e0025
mov ebp, 0
jmp 0x4e07e3
mov ebp, dword [esp + 0xe4]
mov edi, 0
mov esi, 0
jmp 0x4e0707
cmp ebx, 0x9ad926a8
mov ebp, dword [esp + 0xe4]
jmp 0x4e07d3
cmp ebx, 0x6e0df0d1
jbe 0x4e0a34
cmp ebx, 0x734d2a16
jne 0x4e0a22
lea ebp, [0x8c5280]
cmp ebp, edx
jne 0x4e0a0c
mov ebp, dword [esp + 0xe4]
mov esi, dword [ebp + 4]
mov edi, dword [ebp]
jne 0x4e0915
mov dword [esp + 0x98], edi
mov dword [esp + 0x50], esi
mov edx, dword [esp + 0x60]
mov ebx, dword [esp + 0xdc]
mov ebp, dword [esp + 0xd8]
mov eax, dword [esp + 0xa0]
xor ecx, ecx
jmp 0x4e08c2
mov edi, dword [esp + 0x98]
mov dword [edi + ecx*4], eax
inc ecx
mov eax, dword [esp + 0x60]
mov ebx, dword [esp + 0xdc]
mov ebp, dword [esp + 0xd8]
mov esi, dword [esp + 0xa0]
mov eax, esi
mov edx, dword [esp + 0x60]
mov esi, dword [esp + 0x50]
cmp ecx, esi
jge 0x4e0025
mov dword [esp + 0x40], ecx
shl ecx, 2
cmp ecx, edx
ja 0x4e0b52
mov esi, dword [ebp + 0x24]
mov dword [esp], ebx
sub edx, ecx
mov dword [esp + 0x64], edx
neg edx
sar edx, 0x1f
and ecx, edx
add ecx, eax
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x64]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ecx
call esi
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x50]
cmp ecx, edx
jb 0x4e0894
jmp 0x4e0b49
cmp ebx, 0x8237d00c
jne 0x4e0025
lea ebx, [0x8c5240]
cmp ebx, edx
jne 0x4e09fd
mov edx, dword [ebp]
mov ebx, dword [ebp + 4]
jne 0x4e0025
mov dword [esp + 0x98], edx
mov dword [esp + 0x48], ebx
mov ebp, dword [esp + 0x60]
mov esi, dword [esp + 0xdc]
mov edi, dword [esp + 0xd8]
mov eax, dword [esp + 0xa0]
xor ecx, ecx
jmp 0x4e09a2
mov ebx, dword [esp + 0x98]
mov word [ebx + ecx*2], ax
inc ecx
mov eax, dword [esp + 0x60]
mov ebp, dword [esp + 0xdc]
mov esi, dword [esp + 0xd8]
mov edi, dword [esp + 0xa0]
mov eax, edi
mov edx, ebx
mov ebx, dword [esp + 0x48]
mov ebp, dword [esp + 0x60]
mov esi, dword [esp + 0xdc]
mov edi, dword [esp + 0xd8]
cmp ecx, ebx
jge 0x4e0025
mov dword [esp + 0x34], ecx
shl ecx, 1
cmp ecx, ebp
ja 0x4e0b76
mov edx, dword [edi + 0x20]
mov dword [esp], esi
sub ebp, ecx
mov dword [esp + 0x64], ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and ecx, ebp
add ecx, eax
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x64]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ecx
call edx
movzx eax, word [esp + 0x10]
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x48]
cmp ecx, edx
jb 0x4e0963
jmp 0x4e0b6d
mov edx, 0
mov ebx, 0
jmp 0x4e0935
mov ebp, dword [esp + 0xe4]
mov edi, 0
mov esi, 0
jmp 0x4e0866
cmp ebx, 0x8237d00c
mov ebp, dword [esp + 0xe4]
jmp 0x4e091b
cmp ebx, 0x6b581726
jne 0x4e0af3
lea ebp, [0x8b5a40]
cmp ebp, edx
jne 0x4e0ae9
mov eax, dword [esp + 0xe4]
je 0x4e0aa3
cmp ebx, 0x6e0df0d1
jne 0x4e0025
lea ebx, [0x8af740]
cmp ebx, edx
jne 0x4e0a9c
mov eax, dword [esp + 0xe4]
jne 0x4e0025
mov ecx, dword [esp + 0x60]
test ecx, ecx
jbe 0x4e0b9b
mov ecx, dword [esp + 0xa0]
movzx ecx, byte [ecx]
test cl, cl
setne cl
mov byte [eax], cl
jmp 0x4e0025
mov eax, 0
jmp 0x4e0a74
mov dword [esp + 0x8c], eax
mov eax, dword [esp + 0xd8]
mov eax, dword [eax + 0x24]
mov ecx, dword [esp + 0xdc]
mov dword [esp], ecx
mov ecx, dword [esp + 0xa0]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x60]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ecx
call eax
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x8c]
mov dword [ecx], eax
jmp 0x4e0025
mov eax, 0
jmp 0x4e0a55
cmp ebx, 0x6e0df0d1
jmp 0x4e0a5d
mov dword [esp + 0xe8], ecx
mov dword [esp + 0xec], eax
add esp, 0xcc
ret
mov eax, edx
mov ecx, ebx
call fcn.00457060
mov eax, ecx
mov ecx, ebp
call fcn.004570c0
mov eax, edx
mov ecx, ebx
call fcn.00457060
mov eax, ecx
mov ecx, edx
call fcn.004570c0
mov eax, ecx
mov ecx, edx
call fcn.00457060
mov eax, ecx
mov ecx, edx
call fcn.004570c0
mov eax, ecx
mov ecx, edx
call fcn.00457060
mov eax, ecx
mov ecx, edx
call fcn.004570c0
mov eax, ecx
mov ecx, edx
call fcn.00457060
mov eax, ecx
mov ecx, edx
call fcn.004570c0
mov eax, ecx
mov ecx, edx
call fcn.00457060
mov eax, ecx
mov ecx, ebp
call fcn.004570c0
mov ecx, esi
call fcn.00457060
mov ecx, esi
call fcn.00457060
xor eax, eax
call fcn.00457060
xor eax, eax
call fcn.00457060
xor eax, eax
call fcn.00457060
nop
call fcn.004557a0
jmp fcn.004dfba0