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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0xe8]
cmp eax, dword [ecx + 8]
jbe 0x4a2d30
sub esp, 0x168
mov ecx, dword [esp + 0x170]
movzx edx, byte [ecx]
cmp dl, 9
ja 0x4a226a
cmp dl, 4
ja 0x4a1e46
cmp dl, 2
jbe 0x4a1d1e
cmp dl, 3
jne 0x4a1cd4
mov edx, dword [ecx + 0x18]
test edx, edx
je 0x4a1bdc
mov dword [esp + 0x50], edx
mov eax, dword [esp + 0x16c]
xor ebx, ebx
xor ebp, ebp
xor esi, esi
jmp 0x4a1b0b
mov edi, dword [esp + 0x50]
mov edx, dword [esp + 0x16c]
mov ebx, dword [esp + 0x170]
mov ebp, dword [esp + 0x4c]
mov edx, edi
mov ebx, ebp
mov ebp, eax
mov esi, ecx
mov eax, dword [esp + 0x16c]
mov ecx, dword [esp + 0x170]
cmp ebx, edx
jge 0x4a1bc7
mov dword [esp + 0x28], ebp
mov dword [esp + 0x38], esi
mov edi, dword [ecx + 0x1c]
mov ebp, dword [ecx + 0x14]
lea esi, [ebx + 1]
test esi, esi
jl 0x4a2d0f
cmp ebx, esi
ja 0x4a2d0f
cmp esi, edi
ja 0x4a2d0f
mov dword [esp + 0x20], ebx
mov dword [esp + 0x4c], esi
movzx edx, word [ecx + 2]
mov dword [esp], eax
sub edi, ebx
mov dword [esp + 0x48], edi
shl ebx, 2
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and ebx, edi
add ebx, ebp
mov dword [esp + 4], ebx
mov dword [esp + 8], 1
mov ebx, dword [esp + 0x48]
mov dword [esp + 0xc], ebx
mov word [esp + 0x10], dx
call fcn.004a3230
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x20]
test edx, edx
je 0x4a1adf
mov edx, dword [esp + 0x16c]
mov dword [esp], edx
mov ebx, dword [esp + 0x38]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x28]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], eax
call fcn.004a2d40
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
jmp 0x4a1adf
mov dword [esp + 0x174], esi
mov dword [esp + 0x178], ebp
add esp, 0x168
ret
mov ecx, dword [esp + 0x16c]
mov edx, dword [ecx]
nop
nop
mov edx, dword [edx + 4]
mov dword [esp + 0x50], edx
lea edi, [esp + 0x138]
xor eax, eax
call fcn.0044aaba
mov byte [esp + 0x138], 6
mov ecx, dword [esp + 0x16c]
mov ecx, dword [ecx]
mov ebx, dword [ecx + 8]
mov ebp, dword [ecx + 4]
mov eax, edx
mov edx, dword [ecx]
mov esi, ecx
lea ecx, [ebp + 1]
cmp ecx, ebx
ja 0x4a1c7d
lea ecx, [ebp + 1]
mov dword [esi + 4], ecx
lea ecx, [ebp + ebp*2]
lea edi, [edx + ecx*8]
mov ecx, dword [0x5c2560]
test ecx, ecx
jne 0x4a1c5a
lea esi, [esp + 0x138]
call fcn.0044af94
mov dword [esp + 0x174], eax
shl eax, 1
mov dword [esp + 0x178], eax
add esp, 0x168
ret
lea eax, [0x4dfc20]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x138]
mov dword [esp + 8], eax
call fcn.0040ded0
mov eax, dword [esp + 0x50]
jmp 0x4a1c43
mov dword [esp + 0x5c], esi
lea eax, [0x4dfc20]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], ecx
call fcn.00436de0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0x5c]
mov dword [edi + 8], edx
mov edx, dword [0x5c2560]
test edx, edx
jne 0x4a1ccd
mov dword [edi], eax
mov esi, edi
mov ebp, ecx
mov edx, eax
mov eax, dword [esp + 0x50]
jmp 0x4a1c20
call fcn.0044a9c0
jmp 0x4a1cbe
mov eax, dword [ecx + 0x1c]
mov edx, dword [ecx + 0x18]
mov ebx, dword [ecx + 0x14]
movzx ecx, word [ecx + 2]
mov ebp, dword [esp + 0x16c]
mov dword [esp], ebp
mov dword [esp + 4], ebx
mov dword [esp + 8], edx
mov dword [esp + 0xc], eax
mov word [esp + 0x10], cx
call fcn.004a3230
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x174], ecx
mov dword [esp + 0x178], eax
add esp, 0x168
ret
cmp dl, 1
je 0x4a1e28
cmp dl, 2
jne 0x4a2d16
mov ecx, dword [esp + 0x16c]
mov edx, dword [ecx]
nop
nop
mov edx, dword [edx + 4]
mov dword [esp + 0x50], edx
lea edi, [esp + 0x150]
xor eax, eax
call fcn.0044aaba
mov byte [esp + 0x150], 6
mov ecx, dword [esp + 0x16c]
mov ecx, dword [ecx]
mov ebx, dword [ecx + 4]
mov ebp, dword [ecx]
mov eax, edx
mov edx, dword [ecx + 8]
mov esi, ecx
lea ecx, [ebx + 1]
cmp ecx, edx
ja 0x4a1dd1
lea ecx, [ebx + 1]
mov dword [esi + 4], ecx
lea ecx, [ebx + ebx*2]
lea edi, [ebp + ecx*8]
mov ecx, dword [0x5c2560]
test ecx, ecx
jne 0x4a1dae
lea esi, [esp + 0x150]
call fcn.0044af94
mov dword [esp + 0x174], eax
shl eax, 1
mov dword [esp + 0x178], eax
add esp, 0x168
ret
lea eax, [0x4dfc20]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x150]
mov dword [esp + 8], eax
call fcn.0040ded0
mov eax, dword [esp + 0x50]
jmp 0x4a1d97
mov dword [esp + 0x5c], esi
lea eax, [0x4dfc20]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ecx
call fcn.00436de0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0x5c]
mov dword [edi + 8], edx
mov edx, dword [0x5c2560]
test edx, edx
jne 0x4a1e21
mov dword [edi], eax
mov esi, edi
mov ebx, ecx
mov ebp, eax
mov eax, dword [esp + 0x50]
jmp 0x4a1d74
call fcn.0044a9c0
jmp 0x4a1e12
nop
mov dword [esp + 0x174], 0
mov dword [esp + 0x178], 0
add esp, 0x168
ret
cmp dl, 6
ja 0x4a1ef6
cmp dl, 5
jne 0x4a1ea5
mov eax, dword [esp + 0x16c]
mov dword [esp], eax
mov eax, dword [0x5ae91c]
mov ecx, dword [0x5ae920]
mov edx, dword [0x5ae918]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
mov word [esp + 0x10], 0
call fcn.004a3230
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x174], ecx
mov dword [esp + 0x178], eax
add esp, 0x168
ret
mov eax, dword [esp + 0x16c]
mov dword [esp], eax
mov eax, dword [0x5ae90c]
mov ecx, dword [0x5ae908]
mov edx, dword [0x5ae910]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
mov word [esp + 0x10], 0
call fcn.004a3230
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x174], ecx
mov dword [esp + 0x178], eax
add esp, 0x168
ret
cmp dl, 7
jne 0x4a2020
mov ecx, dword [esp + 0x16c]
mov edx, dword [ecx]
nop
nop
mov edx, dword [edx + 4]
mov dword [esp + 0x50], edx
lea edi, [esp + 0x120]
xor eax, eax
call fcn.0044aaba
mov byte [esp + 0x120], 3
mov ecx, dword [esp + 0x16c]
mov ebx, dword [ecx]
mov ebp, dword [ebx + 4]
mov eax, edx
mov edx, dword [ebx + 8]
mov esi, ecx
mov ecx, dword [ebx]
mov edi, ebx
lea ebx, [ebp + 1]
cmp ebx, edx
ja 0x4a1fc4
lea edx, [ebp + 1]
mov dword [edi + 4], edx
lea edx, [ebp + ebp*2]
lea edi, [ecx + edx*8]
mov ecx, dword [0x5c2560]
test ecx, ecx
jne 0x4a1fa1
lea esi, [esp + 0x120]
call fcn.0044af94
mov ecx, dword [esp + 0x16c]
mov ecx, dword [ecx]
mov edx, dword [ecx]
cmp dword [ecx + 4], eax
jbe 0x4a2d08
lea ecx, [eax + eax*2]
shl ecx, 3
mov dword [edx + ecx + 8], 1
mov dword [esp + 0x174], eax
shl eax, 1
mov dword [esp + 0x178], eax
add esp, 0x168
ret
lea eax, [0x4dfc20]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x120]
mov dword [esp + 8], eax
call fcn.0040ded0
mov eax, dword [esp + 0x50]
jmp 0x4a1f68
mov dword [esp + 0x5c], edi
lea eax, [0x4dfc20]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ebx
call fcn.00436de0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0x5c]
mov dword [edi + 8], edx
mov edx, dword [0x5c2560]
test edx, edx
jne 0x4a2019
mov dword [edi], eax
mov esi, dword [esp + 0x16c]
mov ebp, ecx
mov ecx, eax
mov eax, dword [esp + 0x50]
jmp 0x4a1f45
call fcn.0044a9c0
jmp 0x4a2005
cmp dl, 8
jne 0x4a214a
mov ecx, dword [esp + 0x16c]
mov edx, dword [ecx]
nop
nop
mov edx, dword [edx + 4]
mov dword [esp + 0x50], edx
lea edi, [esp + 0x108]
xor eax, eax
call fcn.0044aaba
mov byte [esp + 0x108], 3
mov ecx, dword [esp + 0x16c]
mov ebx, dword [ecx]
mov ebp, dword [ebx]
mov eax, edx
mov edx, dword [ebx + 4]
mov esi, ecx
mov ecx, dword [ebx + 8]
mov edi, ebx
lea ebx, [edx + 1]
cmp ebx, ecx
ja 0x4a20ee
lea ecx, [edx + 1]
mov dword [edi + 4], ecx
lea ecx, [edx + edx*2]
lea edi, [ebp + ecx*8]
mov ecx, dword [0x5c2560]
test ecx, ecx
jne 0x4a20cb
lea esi, [esp + 0x108]
call fcn.0044af94
mov ecx, dword [esp + 0x16c]
mov ecx, dword [ecx]
mov edx, dword [ecx]
cmp dword [ecx + 4], eax
jbe 0x4a2d01
lea ecx, [eax + eax*2]
shl ecx, 3
mov dword [edx + ecx + 8], 2
mov dword [esp + 0x174], eax
shl eax, 1
mov dword [esp + 0x178], eax
add esp, 0x168
ret
lea eax, [0x4dfc20]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x108]
mov dword [esp + 8], eax
call fcn.0040ded0
mov eax, dword [esp + 0x50]
jmp 0x4a2092
mov dword [esp + 0x5c], edi
lea eax, [0x4dfc20]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ebx
call fcn.00436de0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0x5c]
mov dword [edi + 8], edx
mov edx, dword [0x5c2560]
test edx, edx
jne 0x4a2143
mov dword [edi], eax
mov esi, dword [esp + 0x16c]
mov edx, ecx
mov ebp, eax
mov eax, dword [esp + 0x50]
jmp 0x4a206f
call fcn.0044a9c0
jmp 0x4a212f
mov ecx, dword [esp + 0x16c]
mov edx, dword [ecx]
nop
nop
mov edx, dword [edx + 4]
mov dword [esp + 0x50], edx
lea edi, [esp + 0xf0]
xor eax, eax
call fcn.0044aaba
mov byte [esp + 0xf0], 3
mov ecx, dword [esp + 0x16c]
mov ebx, dword [ecx]
mov ebp, dword [ebx + 8]
mov eax, edx
mov edx, dword [ebx + 4]
mov esi, ecx
mov ecx, dword [ebx]
mov edi, ebx
lea ebx, [edx + 1]
cmp ebx, ebp
ja 0x4a220e
lea ebx, [edx + 1]
mov dword [edi + 4], ebx
lea edx, [edx + edx*2]
lea edi, [ecx + edx*8]
mov ecx, dword [0x5c2560]
test ecx, ecx
jne 0x4a21eb
lea esi, [esp + 0xf0]
call fcn.0044af94
mov ecx, dword [esp + 0x16c]
mov ecx, dword [ecx]
mov edx, dword [ecx]
cmp dword [ecx + 4], eax
jbe 0x4a2cfa
lea ecx, [eax + eax*2]
shl ecx, 3
mov dword [edx + ecx + 8], 4
mov dword [esp + 0x174], eax
shl eax, 1
mov dword [esp + 0x178], eax
add esp, 0x168
ret
lea eax, [0x4dfc20]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0xf0]
mov dword [esp + 8], eax
call fcn.0040ded0
mov eax, dword [esp + 0x50]
jmp 0x4a21b2
mov dword [esp + 0x5c], edi
lea eax, [0x4dfc20]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], ebx
call fcn.00436de0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0x5c]
mov dword [edi + 8], edx
mov edx, dword [0x5c2560]
test edx, edx
jne 0x4a2263
mov dword [edi], eax
mov esi, dword [esp + 0x16c]
mov edx, ecx
mov ecx, eax
mov eax, dword [esp + 0x50]
jmp 0x4a2190
call fcn.0044a9c0
jmp 0x4a224f
cmp dl, 0xd
jbe 0x4a264f
cmp dl, 0xf
jbe 0x4a2559
cmp dl, 0x10
je 0x4a24e3
cmp dl, 0x12
jne 0x4a2443
mov edx, dword [ecx + 4]
mov ecx, dword [ecx + 8]
test ecx, ecx
je 0x4a2357
mov dword [esp + 0x50], ecx
mov dword [esp + 0x58], edx
xor eax, eax
xor ebx, ebx
xor ebp, ebp
jmp 0x4a22bf
mov esi, dword [esp + 0x24]
inc esi
mov edx, dword [esp + 0x58]
mov ebx, eax
mov ebp, ecx
mov ecx, dword [esp + 0x50]
mov eax, esi
cmp eax, ecx
jge 0x4a2342
mov dword [esp + 0x24], eax
mov esi, dword [edx + eax*4]
test eax, eax
jne 0x4a22eb
mov eax, dword [esp + 0x16c]
mov dword [esp], eax
mov dword [esp + 4], esi
call fcn.004a1a70
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
jmp 0x4a22ac
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], ebp
mov eax, dword [esp + 0x16c]
mov dword [esp], eax
mov dword [esp + 4], esi
call fcn.004a1a70
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x16c]
mov dword [esp], edx
mov ebx, dword [esp + 0x34]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x30]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
call fcn.004a2d40
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
jmp 0x4a22ac
mov dword [esp + 0x174], ebp
mov dword [esp + 0x178], ebx
add esp, 0x168
ret
mov ecx, dword [esp + 0x16c]
mov edx, dword [ecx]
nop
nop
mov edx, dword [edx + 4]
mov dword [esp + 0x50], edx
lea edi, [esp + 0x60]
xor eax, eax
call fcn.0044aaba
mov byte [esp + 0x60], 6
mov ecx, dword [esp + 0x16c]
mov ecx, dword [ecx]
mov ebx, dword [ecx + 8]
mov ebp, dword [ecx + 4]
mov eax, edx
mov edx, dword [ecx]
mov esi, ecx
lea ecx, [ebp + 1]
cmp ecx, ebx
ja 0x4a23ec
lea ecx, [ebp + 1]
mov dword [esi + 4], ecx
lea ecx, [ebp + ebp*2]
lea edi, [edx + ecx*8]
mov ecx, dword [0x5c2560]
test ecx, ecx
jne 0x4a23cc
lea esi, [esp + 0x60]
call fcn.0044af94
mov dword [esp + 0x174], eax
shl eax, 1
mov dword [esp + 0x178], eax
add esp, 0x168
ret
lea eax, [0x4dfc20]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x60]
mov dword [esp + 8], eax
call fcn.0040ded0
mov eax, dword [esp + 0x50]
jmp 0x4a23b5
mov dword [esp + 0x5c], esi
lea eax, [0x4dfc20]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], ecx
call fcn.00436de0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0x5c]
mov dword [edi + 8], edx
mov edx, dword [0x5c2560]
test edx, edx
jne 0x4a243c
mov dword [edi], eax
mov esi, edi
mov ebp, ecx
mov edx, eax
mov eax, dword [esp + 0x50]
jmp 0x4a2395
call fcn.0044a9c0
jmp 0x4a242d
cmp dl, 0x13
jne 0x4a2d16
mov eax, dword [ecx + 8]
mov dword [esp + 0x50], eax
mov ecx, dword [ecx + 4]
mov dword [esp + 0x54], ecx
xor edx, edx
xor ebx, ebx
xor ebp, ebp
jmp 0x4a24ca
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x3c], ebp
mov dword [esp + 0x4c], edx
mov eax, dword [ecx + edx*4]
mov ebx, dword [esp + 0x16c]
mov dword [esp], ebx
mov dword [esp + 4], eax
call fcn.004a1a70
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0x16c]
mov dword [esp], edx
mov ebx, dword [esp + 0x3c]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x2c]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], eax
call fcn.004a2db0
mov eax, dword [esp + 0x4c]
lea edx, [eax + 1]
mov ebx, dword [esp + 0x18]
mov ebp, dword [esp + 0x14]
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x54]
cmp edx, eax
jl 0x4a2462
mov dword [esp + 0x174], ebp
mov dword [esp + 0x178], ebx
add esp, 0x168
ret
mov eax, dword [ecx + 4]
mov edx, dword [ecx + 8]
test edx, edx
jbe 0x4a2cbb
mov eax, dword [eax]
mov ecx, dword [esp + 0x16c]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.004a1a70
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x170]
movzx edx, word [edx + 2]
mov ebx, dword [esp + 0x16c]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
test dx, 0x20
setne al
mov byte [esp + 0xc], al
call fcn.004a2f50
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x174], ecx
mov dword [esp + 0x178], eax
add esp, 0x168
ret
cmp dl, 0xe
jne 0x4a25d4
mov eax, dword [ecx + 4]
mov edx, dword [ecx + 8]
test edx, edx
jbe 0x4a2cc9
mov eax, dword [eax]
mov ecx, dword [esp + 0x16c]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.004a1a70
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x170]
movzx edx, word [edx + 2]
mov ebx, dword [esp + 0x16c]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
test dx, 0x20
setne al
mov byte [esp + 0xc], al
call fcn.004a30c0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x174], eax
mov dword [esp + 0x178], ecx
add esp, 0x168
ret
mov eax, dword [ecx + 8]
mov edx, dword [ecx + 4]
test eax, eax
jbe 0x4a2cc2
mov eax, dword [edx]
mov ecx, dword [esp + 0x16c]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.004a1a70
nop
mov eax, dword [esp + 8]
mov dword [esp + 0x44], eax
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x170]
movzx edx, word [edx + 2]
mov ebx, dword [esp + 0x16c]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
test dx, 0x20
setne cl
mov byte [esp + 0xc], cl
call fcn.004a30c0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x44]
mov dword [esp + 0x174], ecx
mov dword [esp + 0x178], eax
add esp, 0x168
ret
cmp dl, 0xb
ja 0x4a28a1
cmp dl, 0xa
jne 0x4a2782
mov ecx, dword [esp + 0x16c]
mov edx, dword [ecx]
nop
nop
mov edx, dword [edx + 4]
mov dword [esp + 0x50], edx
lea edi, [esp + 0xd8]
xor eax, eax
call fcn.0044aaba
mov byte [esp + 0xd8], 3
mov ecx, dword [esp + 0x16c]
mov ebx, dword [ecx]
mov ebp, dword [ebx + 4]
mov eax, edx
mov edx, dword [ebx + 8]
mov esi, ecx
mov ecx, dword [ebx]
mov edi, ebx
lea ebx, [ebp + 1]
cmp ebx, edx
ja 0x4a2726
lea edx, [ebp + 1]
mov dword [edi + 4], edx
lea edx, [ebp + ebp*2]
lea edi, [ecx + edx*8]
mov ecx, dword [0x5c2560]
test ecx, ecx
jne 0x4a2703
lea esi, [esp + 0xd8]
call fcn.0044af94
mov ecx, dword [esp + 0x16c]
mov ecx, dword [ecx]
mov edx, dword [ecx]
cmp dword [ecx + 4], eax
jbe 0x4a2cf3
lea ecx, [eax + eax*2]
shl ecx, 3
mov dword [edx + ecx + 8], 8
mov dword [esp + 0x174], eax
shl eax, 1
mov dword [esp + 0x178], eax
add esp, 0x168
ret
lea eax, [0x4dfc20]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0xd8]
mov dword [esp + 8], eax
call fcn.0040ded0
mov eax, dword [esp + 0x50]
jmp 0x4a26ca
mov dword [esp + 0x5c], edi
lea eax, [0x4dfc20]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ebx
call fcn.00436de0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0x5c]
mov dword [edi + 8], edx
mov edx, dword [0x5c2560]
test edx, edx
jne 0x4a277b
mov dword [edi], eax
mov esi, dword [esp + 0x16c]
mov ebp, ecx
mov ecx, eax
mov eax, dword [esp + 0x50]
jmp 0x4a26a7
call fcn.0044a9c0
jmp 0x4a2767
mov ecx, dword [esp + 0x16c]
mov edx, dword [ecx]
nop
nop
mov edx, dword [edx + 4]
mov dword [esp + 0x50], edx
lea edi, [esp + 0xc0]
xor eax, eax
call fcn.0044aaba
mov byte [esp + 0xc0], 3
mov ecx, dword [esp + 0x16c]
mov ebx, dword [ecx]
mov ebp, dword [ebx]
mov eax, edx
mov edx, dword [ebx + 8]
mov esi, ecx
mov ecx, dword [ebx + 4]
mov edi, ebx
lea ebx, [ecx + 1]
cmp ebx, edx
ja 0x4a2847
lea edx, [ecx + 1]
mov dword [edi + 4], edx
mov edx, dword [0x5c2560]
lea ecx, [ecx + ecx*2]
lea edi, [ebp + ecx*8]
test edx, edx
jne 0x4a2824
lea esi, [esp + 0xc0]
call fcn.0044af94
mov ecx, dword [esp + 0x16c]
mov ecx, dword [ecx]
mov edx, dword [ecx]
cmp dword [ecx + 4], eax
jbe 0x4a2cec
lea ecx, [eax + eax*2]
shl ecx, 3
mov dword [edx + ecx + 8], 0x10
mov dword [esp + 0x174], eax
shl eax, 1
mov dword [esp + 0x178], eax
add esp, 0x168
ret
lea eax, [0x4dfc20]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0xc0]
mov dword [esp + 8], eax
call fcn.0040ded0
mov eax, dword [esp + 0x50]
jmp 0x4a27eb
mov dword [esp + 0x5c], edi
lea eax, [0x4dfc20]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ebx
call fcn.00436de0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0x5c]
mov dword [edi + 8], edx
mov edx, dword [0x5c2560]
test edx, edx
jne 0x4a289a
mov dword [edi], eax
mov esi, dword [esp + 0x16c]
mov ebp, eax
mov eax, dword [esp + 0x50]
jmp 0x4a27c8
call fcn.0044a9c0
jmp 0x4a2888
cmp dl, 0xc
jne 0x4a29ca
mov ecx, dword [esp + 0x16c]
mov edx, dword [ecx]
nop
nop
mov edx, dword [edx + 4]
mov dword [esp + 0x50], edx
lea edi, [esp + 0xa8]
xor eax, eax
call fcn.0044aaba
mov byte [esp + 0xa8], 3
mov ecx, dword [esp + 0x16c]
mov ebx, dword [ecx]
mov ebp, dword [ebx + 8]
mov eax, edx
mov edx, dword [ebx + 4]
mov esi, ecx
mov ecx, dword [ebx]
mov edi, ebx
lea ebx, [edx + 1]
cmp ebx, ebp
ja 0x4a296e
lea ebx, [edx + 1]
mov dword [edi + 4], ebx
lea edx, [edx + edx*2]
lea edi, [ecx + edx*8]
mov ecx, dword [0x5c2560]
test ecx, ecx
jne 0x4a294b
lea esi, [esp + 0xa8]
call fcn.0044af94
mov ecx, dword [esp + 0x16c]
mov ecx, dword [ecx]
mov edx, dword [ecx]
cmp dword [ecx + 4], eax
jbe 0x4a2ce5
lea ecx, [eax + eax*2]
shl ecx, 3
mov dword [edx + ecx + 8], 0x20
mov dword [esp + 0x174], eax
shl eax, 1
mov dword [esp + 0x178], eax
add esp, 0x168
ret
lea eax, [0x4dfc20]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0xa8]
mov dword [esp + 8], eax
call fcn.0040ded0
mov eax, dword [esp + 0x50]
jmp 0x4a2912
mov dword [esp + 0x5c], edi
lea eax, [0x4dfc20]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], ebx
call fcn.00436de0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0x5c]
mov dword [edi + 8], edx
mov edx, dword [0x5c2560]
test edx, edx
jne 0x4a29c3
mov dword [edi], eax
mov esi, dword [esp + 0x16c]
mov edx, ecx
mov ecx, eax
mov eax, dword [esp + 0x50]
jmp 0x4a28f0
call fcn.0044a9c0
jmp 0x4a29af
mov edx, dword [esp + 0x16c]
mov ebx, dword [edx]
nop
mov ebp, dword [ecx + 0x30]
mov dword [esp + 0x50], ebp
nop
mov ebx, dword [ebx + 4]
mov dword [esp + 0x4c], ebx
lea edi, [esp + 0x90]
xor eax, eax
call fcn.0044aaba
mov byte [esp + 0x90], 2
mov ecx, dword [edx]
mov dword [esp + 0x5c], ecx
mov esi, ebp
mov ebp, dword [ecx + 4]
mov edi, ebx
mov ebx, dword [ecx + 8]
mov edx, dword [ecx]
lea ecx, [ebp + 1]
cmp ecx, ebx
ja 0x4a2c64
lea ecx, [ebp + 1]
mov ebx, dword [esp + 0x5c]
mov dword [ebx + 4], ecx
lea ecx, [ebp + ebp*2]
mov ebx, dword [0x5c2560]
lea ecx, [edx + ecx*8]
test ebx, ebx
jne 0x4a2c38
mov edx, edi
mov edi, ecx
mov ebx, esi
lea esi, [esp + 0x90]
call fcn.0044af94
mov ecx, dword [esp + 0x16c]
mov ebp, dword [ecx]
mov esi, dword [ebp]
cmp dword [ebp + 4], edx
jbe 0x4a2cde
shl ebx, 1
lea ebp, [edx + edx*2]
shl ebp, 3
mov dword [esi + ebp + 8], ebx
mov ebp, dword [ecx]
inc ebx
cmp dword [ebp + 0x10], ebx
jge 0x4a2a73
mov dword [ebp + 0x10], ebx
mov ebx, dword [esp + 0x170]
mov ebp, dword [ebx + 4]
mov esi, dword [ebx + 8]
test esi, esi
jbe 0x4a2cd7
mov eax, dword [ebp]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.004a1a70
mov eax, dword [esp + 0x16c]
mov ecx, dword [eax]
mov edx, dword [esp + 0xc]
mov dword [esp + 0x40], edx
mov ebx, dword [esp + 8]
mov dword [esp + 0x44], ebx
nop
mov ebp, dword [esp + 0x170]
mov ebp, dword [ebp + 0x30]
mov dword [esp + 0x50], ebp
nop
mov ecx, dword [ecx + 4]
mov dword [esp + 0x48], ecx
lea edi, [esp + 0x78]
mov esi, eax
xor eax, eax
call fcn.0044aaba
mov byte [esp + 0x78], 2
mov eax, dword [esi]
mov ecx, dword [eax + 8]
mov edi, dword [eax + 4]
mov edx, dword [eax]
lea ebx, [edi + 1]
cmp ebx, ecx
ja 0x4a2bda
lea ecx, [edi + 1]
mov dword [eax + 4], ecx
lea eax, [edi + edi*2]
lea edi, [edx + eax*8]
mov eax, dword [0x5c2560]
test eax, eax
jne 0x4a2bb0
mov eax, esi
lea esi, [esp + 0x78]
call fcn.0044af94
mov ecx, dword [eax]
mov edx, dword [ecx]
mov ebx, dword [esp + 0x48]
cmp dword [ecx + 4], ebx
jbe 0x4a2cd0
shl ebp, 1
or ebp, 1
lea ecx, [ebx + ebx*2]
shl ecx, 3
mov dword [edx + ecx + 8], ebp
mov ecx, dword [eax]
lea edx, [ebp + 1]
cmp dword [ecx + 0x10], edx
jge 0x4a2b40
mov dword [ecx + 0x10], edx
mov dword [esp], eax
mov ecx, dword [esp + 0x4c]
mov dword [esp + 4], ecx
shl ecx, 1
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0x44]
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x10], ecx
call fcn.004a2d40
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x16c]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 0xc], eax
shl eax, 1
mov dword [esp + 0x10], eax
call fcn.004a2d40
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x174], eax
mov dword [esp + 0x178], ecx
add esp, 0x168
ret
lea eax, [0x4dfc20]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x78]
mov dword [esp + 8], eax
call fcn.0040ded0
mov eax, dword [esp + 0x16c]
mov ebp, dword [esp + 0x50]
jmp 0x4a2b13
mov dword [esp + 0x5c], eax
lea eax, [0x4dfc20]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], edi
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ebx
call fcn.00436de0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0x5c]
mov dword [edi + 8], edx
mov edx, dword [0x5c2560]
test edx, edx
jne 0x4a2c31
mov dword [edi], eax
mov ebp, dword [esp + 0x50]
mov esi, dword [esp + 0x16c]
mov edx, eax
mov eax, edi
mov edi, ecx
jmp 0x4a2aee
call fcn.0044a9c0
jmp 0x4a2c1b
lea eax, [0x4dfc20]
mov dword [esp], eax
mov dword [esp + 4], ecx
lea eax, [esp + 0x90]
mov dword [esp + 8], eax
call fcn.0040ded0
xor eax, eax
mov edx, dword [esp + 0x4c]
mov ebx, dword [esp + 0x50]
jmp 0x4a2a47
lea eax, [0x4dfc20]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], ecx
call fcn.00436de0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0x5c]
mov dword [edi + 8], edx
mov edx, dword [0x5c2560]
test edx, edx
jne 0x4a2cb4
mov dword [edi], eax
mov esi, dword [esp + 0x50]
mov edi, dword [esp + 0x4c]
mov ebp, ecx
mov edx, eax
xor eax, eax
jmp 0x4a2a16
call fcn.0044a9c0
jmp 0x4a2ca1
call fcn.004253a0
ud2
call fcn.004253a0
ud2
call fcn.004253a0
ud2
call fcn.004253a0
ud2
call fcn.004253a0
ud2
call fcn.004253a0
ud2
call fcn.004253a0
ud2
call fcn.004253a0
ud2
call fcn.004253a0
ud2
call fcn.004253a0
ud2
call fcn.004253a0
ud2
call fcn.004253a0
ud2
call fcn.004254a0
ud2
lea eax, [0x4d4540]
mov dword [esp], eax
lea eax, [0x50d970]
mov dword [esp + 4], eax
call fcn.00426160
ud2
call fcn.00449270
jmp fcn.004a1a70