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

Disassembly:
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x10]
sub esp, 0x94
push esi
mov esi, dword [esp + 0xa0]
lea eax, [esp + 0x34]
push eax
push ecx
push esi
push edx
call fcn.00496340
add esp, 0x10
test eax, eax
je 0x469657
mov eax, 1
pop esi
add esp, 0x94
ret
mov esi, dword [esi + 0xc]
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x44]
mov dword [esp + 8], esi
imul eax, dword [esp + 8]
mov esi, dword [esp + 0xa8]
mov esi, dword [esi + 0xc]
mov edx, dword [esp + 0x54]
push ebx
mov ebx, dword [esp + 0x3c]
mov dword [esp + 0x10], esi
lea esi, [eax + ebx*4]
mov eax, dword [esp + 0xa4]
add esi, dword [eax + 8]
mov eax, dword [esp + 0x10]
push ebp
mov ebp, dword [esp + 0x54]
imul eax, ebp
push edi
mov edi, dword [esp + 0x54]
mov dword [esp + 0xa0], ecx
mov ecx, dword [esp + 0x5c]
sub ecx, edi
lea edi, [eax + edi*4]
mov eax, dword [esp + 0xb4]
sub edx, ebp
mov ebp, dword [eax + 8]
mov al, byte [esp + 0x40]
add edi, ebp
test al, al
je 0x4698f5
mov eax, ecx
sar eax, 3
mov dword [esp + 0x10], eax
mov ebp, ecx
and ebp, 7
mov eax, ebp
sub eax, dword [esp + 0x4c]
add eax, ebx
mov ebx, dword [esp + 0x14]
lea eax, [ebx + eax*4]
mov dword [esp + 0x14], eax
mov eax, ebp
sub eax, ecx
test ebp, ebp
mov ecx, dword [esp + 0x18]
lea eax, [ecx + eax*4]
mov dword [esp + 0x18], eax
jne 0x4697e5
test edx, edx
jle 0x4699d9
lea ebx, [ebx]
mov eax, dword [esp + 0x10]
test eax, eax
jle 0x4697c5
mov ebp, dword [esp + 0x10]
lea eax, [edi + 5]
lea ecx, [esi + 5]
mov bl, byte [ecx - 3]
mov byte [eax - 3], bl
mov bl, byte [ecx - 4]
mov byte [eax - 4], bl
mov bl, byte [esi]
mov byte [edi], bl
mov bl, byte [ecx + 1]
mov byte [eax + 1], bl
mov bl, byte [ecx]
mov byte [eax], bl
mov bl, byte [ecx - 1]
mov byte [eax - 1], bl
mov bl, byte [ecx + 5]
mov byte [eax + 5], bl
mov bl, byte [ecx + 4]
mov byte [eax + 4], bl
mov bl, byte [ecx + 3]
mov byte [eax + 3], bl
mov bl, byte [ecx + 9]
mov byte [eax + 9], bl
mov bl, byte [ecx + 8]
mov byte [eax + 8], bl
mov bl, byte [ecx + 7]
mov byte [eax + 7], bl
mov bl, byte [ecx + 0xd]
mov byte [eax + 0xd], bl
mov bl, byte [ecx + 0xc]
mov byte [eax + 0xc], bl
mov bl, byte [ecx + 0xb]
mov byte [eax + 0xb], bl
mov bl, byte [ecx + 0x11]
mov byte [eax + 0x11], bl
mov bl, byte [ecx + 0x10]
mov byte [eax + 0x10], bl
mov bl, byte [ecx + 0xf]
mov byte [eax + 0xf], bl
mov bl, byte [ecx + 0x15]
mov byte [eax + 0x15], bl
mov bl, byte [ecx + 0x14]
mov byte [eax + 0x14], bl
mov bl, byte [ecx + 0x13]
mov byte [eax + 0x13], bl
mov bl, byte [ecx + 0x19]
mov byte [eax + 0x19], bl
mov bl, byte [ecx + 0x18]
mov byte [eax + 0x18], bl
mov bl, byte [ecx + 0x17]
mov byte [eax + 0x17], bl
add edi, 0x20
add eax, 0x20
add esi, 0x20
add ecx, 0x20
dec ebp
jne 0x469726
mov ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
add edi, ebx
add esi, ecx
dec edx
jne 0x469710
pop edi
pop ebp
pop ebx
xor eax, eax
pop esi
add esp, 0x94
ret
test edx, edx
jle 0x4699d9
mov dword [esp + 0x1c], edx
mov eax, dword [esp + 0x10]
test eax, eax
jle 0x4698a6
mov ebx, dword [esp + 0x10]
lea eax, [edi + 5]
lea ecx, [esi + 5]
mov dl, byte [ecx - 3]
mov byte [eax - 3], dl
mov dl, byte [ecx - 4]
mov byte [eax - 4], dl
mov dl, byte [esi]
mov byte [edi], dl
mov dl, byte [ecx + 1]
mov byte [eax + 1], dl
mov dl, byte [ecx]
mov byte [eax], dl
mov dl, byte [ecx - 1]
mov byte [eax - 1], dl
mov dl, byte [ecx + 5]
mov byte [eax + 5], dl
mov dl, byte [ecx + 4]
mov byte [eax + 4], dl
mov dl, byte [ecx + 3]
mov byte [eax + 3], dl
mov dl, byte [ecx + 9]
mov byte [eax + 9], dl
mov dl, byte [ecx + 8]
mov byte [eax + 8], dl
mov dl, byte [ecx + 7]
mov byte [eax + 7], dl
mov dl, byte [ecx + 0xd]
mov byte [eax + 0xd], dl
mov dl, byte [ecx + 0xc]
mov byte [eax + 0xc], dl
mov dl, byte [ecx + 0xb]
mov byte [eax + 0xb], dl
mov dl, byte [ecx + 0x11]
mov byte [eax + 0x11], dl
mov dl, byte [ecx + 0x10]
mov byte [eax + 0x10], dl
mov dl, byte [ecx + 0xf]
mov byte [eax + 0xf], dl
mov dl, byte [ecx + 0x15]
mov byte [eax + 0x15], dl
mov dl, byte [ecx + 0x14]
mov byte [eax + 0x14], dl
mov dl, byte [ecx + 0x13]
mov byte [eax + 0x13], dl
mov dl, byte [ecx + 0x19]
mov byte [eax + 0x19], dl
mov dl, byte [ecx + 0x18]
mov byte [eax + 0x18], dl
mov dl, byte [ecx + 0x17]
mov byte [eax + 0x17], dl
add edi, 0x20
add eax, 0x20
add esi, 0x20
add ecx, 0x20
dec ebx
jne 0x469807
xor ecx, ecx
test ebp, ebp
jle 0x4698cd
mov ebx, esi
lea eax, [edi + 2]
sub ebx, edi
mov dl, byte [ebx + eax]
mov byte [eax], dl
mov dl, byte [esi + ecx*4 + 1]
mov byte [eax - 1], dl
mov dl, byte [esi + ecx*4]
mov byte [eax - 2], dl
inc ecx
add eax, 4
cmp ecx, ebp
jl 0x4698b3
mov edx, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
add edi, edx
add esi, ecx
dec eax
mov dword [esp + 0x1c], eax
jne 0x4697f1
pop edi
pop ebp
pop ebx
xor eax, eax
pop esi
add esp, 0x94
ret
mov eax, dword [esp + 0x80]
mov ebx, dword [esp + 0x14]
imul ebx, dword [esp + 0x90]
shl eax, 2
test edx, edx
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x78]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x88]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x8c]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x84]
mov dword [esp + 0x10], eax
jle 0x4699d9
lea eax, [edi + 1]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], edx
jmp 0x469960
mov edx, dword [esp + 0x10]
add edx, dword [esp + 0x38]
mov dword [esp + 0x10], edx
js 0x46997e
mov ebp, dword [esp + 0x14]
mov edi, dword [esp + 0x24]
add esi, ebp
sub edx, edi
mov dword [esp + 0x10], edx
test ecx, ecx
mov ebp, dword [esp + 0x30]
mov dword [esp + 0x34], esi
jle 0x4699bd
mov edi, ecx
lea esp, [esp]
add ebp, dword [esp + 0x3c]
js 0x46999f
mov edx, dword [esp + 0x28]
add esi, 4
sub ebp, edx
mov dl, byte [esi + 2]
mov byte [eax + 1], dl
mov dl, byte [esi + 1]
mov byte [eax], dl
mov dl, byte [esi]
mov byte [eax - 1], dl
add esi, dword [esp + 0x2c]
add eax, 4
dec edi
jne 0x469990
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 0x34]
mov edi, dword [esp + 0x18]
lea esi, [edx + ebx]
mov edx, dword [esp + 0x20]
add eax, edi
dec edx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], edx
jne 0x469960
pop edi
pop ebp
pop ebx
xor eax, eax
pop esi
add esp, 0x94
ret