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

Disassembly:
mov ecx, dword [esp + 0x114]
mov edx, dword [esp + 0x10]
sub esp, 0x94
push ebp
mov ebp, dword [esp + 0xa0]
lea eax, [esp + 0x34]
push eax
push ecx
push ebp
push edx
call fcn.00496340
add esp, 0x10
test eax, eax
je 0x4634ca
mov eax, 1
pop ebp
add esp, 0x94
ret
mov ecx, dword [esp + 0x40]
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x90], ecx
mov ecx, dword [esp + 0x50]
push ebx
mov ebx, dword [esp + 0x3c]
push esi
mov esi, dword [esp + 0x50]
sub ecx, esi
mov dword [esp + 0x1c], ecx
mov ecx, dword [ebp + 0xc]
mov edx, dword [esp + 0x4c]
mov dword [esp + 0x14], ecx
imul eax, dword [esp + 0x14]
mov ecx, dword [esp + 0xb0]
mov ecx, dword [ecx + 0xc]
mov dword [esp + 0x20], ecx
lea ecx, [eax + ebx*4]
add ecx, dword [ebp + 8]
mov eax, dword [esp + 0x20]
push edi
mov edi, dword [esp + 0x58]
imul eax, edi
mov dword [esp + 0xa0], edx
mov edx, dword [esp + 0x60]
lea eax, [eax + esi*4]
mov esi, dword [esp + 0xb4]
sub edx, edi
add eax, dword [esi + 8]
cmp byte [esp + 0x40], 0
je 0x46371b
mov esi, dword [esp + 0x20]
mov edi, esi
sar edi, 3
mov dword [esp + 0x10], edi
mov edi, esi
and edi, 7
mov ebp, edi
sub ebp, dword [esp + 0x9c]
add ebp, ebx
mov ebx, dword [esp + 0x18]
lea ebp, [ebx + ebp*4]
mov ebx, edi
sub ebx, esi
test edi, edi
mov esi, dword [esp + 0x24]
lea ebx, [esi + ebx*4]
mov dword [esp + 0x1c], ebp
mov dword [esp + 0x20], ebx
jne 0x463635
test edx, edx
jle 0x4637f4
mov esi, dword [esp + 0x10]
mov edi, edx
nop
test esi, esi
jle 0x46361d
jmp 0x4635a0
movzx edx, byte [ecx + 3]
mov dl, byte [esp + edx + 0xb8]
mov byte [eax + 3], dl
movzx edx, byte [ecx + 7]
mov dl, byte [esp + edx + 0xb8]
mov byte [eax + 7], dl
movzx edx, byte [ecx + 0xb]
mov dl, byte [esp + edx + 0xb8]
mov byte [eax + 0xb], dl
movzx edx, byte [ecx + 0xf]
mov dl, byte [esp + edx + 0xb8]
mov byte [eax + 0xf], dl
movzx edx, byte [ecx + 0x13]
mov dl, byte [esp + edx + 0xb8]
mov byte [eax + 0x13], dl
movzx edx, byte [ecx + 0x17]
mov dl, byte [esp + edx + 0xb8]
mov byte [eax + 0x17], dl
movzx edx, byte [ecx + 0x1b]
mov dl, byte [esp + edx + 0xb8]
mov byte [eax + 0x1b], dl
movzx edx, byte [ecx + 0x1f]
mov dl, byte [esp + edx + 0xb8]
mov byte [eax + 0x1f], dl
add eax, 0x20
add ecx, 0x20
dec esi
jne 0x4635a0
mov esi, dword [esp + 0x10]
add eax, ebx
add ecx, ebp
dec edi
jne 0x463590
pop edi
pop esi
pop ebx
xor eax, eax
pop ebp
add esp, 0x94
ret
test edx, edx
jle 0x4637f4
mov dword [esp + 0x14], edx
mov esi, dword [esp + 0x10]
test esi, esi
jle 0x4636c9
lea ecx, [ecx]
movzx edx, byte [ecx + 3]
mov dl, byte [esp + edx + 0xb8]
mov byte [eax + 3], dl
movzx edx, byte [ecx + 7]
mov dl, byte [esp + edx + 0xb8]
mov byte [eax + 7], dl
movzx edx, byte [ecx + 0xb]
mov dl, byte [esp + edx + 0xb8]
mov byte [eax + 0xb], dl
movzx edx, byte [ecx + 0xf]
mov dl, byte [esp + edx + 0xb8]
mov byte [eax + 0xf], dl
movzx edx, byte [ecx + 0x13]
mov dl, byte [esp + edx + 0xb8]
mov byte [eax + 0x13], dl
movzx edx, byte [ecx + 0x17]
mov dl, byte [esp + edx + 0xb8]
mov byte [eax + 0x17], dl
movzx edx, byte [ecx + 0x1b]
mov dl, byte [esp + edx + 0xb8]
mov byte [eax + 0x1b], dl
movzx edx, byte [ecx + 0x1f]
mov dl, byte [esp + edx + 0xb8]
mov byte [eax + 0x1f], dl
add eax, 0x20
add ecx, 0x20
dec esi
jne 0x463650
test edi, edi
jle 0x4636fb
mov ebp, ecx
lea esi, [eax + 3]
sub ebp, eax
mov edx, edi
jmp 0x4636e0
movzx ebx, byte [esi + ebp]
mov bl, byte [esp + ebx + 0xb8]
mov byte [esi], bl
add esi, 4
dec edx
jne 0x4636e0
mov ebp, dword [esp + 0x1c]
mov ebx, dword [esp + 0x20]
mov edx, dword [esp + 0x14]
add eax, ebx
add ecx, ebp
dec edx
mov dword [esp + 0x14], edx
jne 0x463641
pop edi
pop esi
pop ebx
xor eax, eax
pop ebp
add esp, 0x94
ret
mov esi, dword [esp + 0x80]
mov ebx, dword [esp + 0x18]
imul ebx, dword [esp + 0x90]
shl esi, 2
test edx, edx
mov dword [esp + 0x34], esi
mov esi, dword [esp + 0x74]
mov dword [esp + 0x3c], esi
mov esi, dword [esp + 0x78]
mov dword [esp + 0x38], esi
mov esi, dword [esp + 0x88]
mov dword [esp + 0x28], esi
mov esi, dword [esp + 0x7c]
mov dword [esp + 0x2c], esi
mov esi, dword [esp + 0x8c]
mov dword [esp + 0x30], esi
mov esi, dword [esp + 0x84]
mov dword [esp + 0x10], esi
jle 0x4637f4
add eax, 3
mov dword [esp + 0x14], eax
lea ebp, [ecx + 3]
mov dword [esp + 0x1c], edx
mov eax, dword [esp + 0x10]
add eax, dword [esp + 0x28]
mov dword [esp + 0x10], eax
js 0x4637a2
mov edx, dword [esp + 0x18]
mov ecx, dword [esp + 0x30]
add ebp, edx
sub eax, ecx
mov dword [esp + 0x10], eax
mov esi, dword [esp + 0x20]
test esi, esi
mov edi, dword [esp + 0x3c]
jle 0x4637d9
mov ecx, dword [esp + 0x14]
mov eax, ebp
add edi, dword [esp + 0x38]
js 0x4637c3
mov edx, dword [esp + 0x2c]
add eax, 4
sub edi, edx
movzx edx, byte [eax]
mov dl, byte [esp + edx + 0xb8]
mov byte [ecx], dl
add eax, dword [esp + 0x34]
add ecx, 4
dec esi
jne 0x4637b4
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x14]
add ecx, eax
mov eax, dword [esp + 0x1c]
add ebp, ebx
dec eax
mov dword [esp + 0x14], ecx
mov dword [esp + 0x1c], eax
jne 0x463784
pop edi
pop esi
pop ebx
xor eax, eax
pop ebp
add esp, 0x94
ret