Function at 0x519280
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 0x5198e3
sub esp, 0xcc
mov ebp, dword [esp + 0xe4]
mov esi, dword [esp + 0xd0]
cmp ebp, esi
jne 0x519527
mov edi, dword [esp + 0xe8]
mov eax, ebp
mov ebp, dword [esp + 0xd4]
mov ecx, edi
sub edi, ebp
mov edx, esi
mov esi, dword [esp + 0xec]
mov ebx, ebp
mov ebp, dword [esp + 0xd8]
sub esi, ebp
mov ebp, dword [esp + 0xdc]
add edi, ebp
mov dword [esp + 8], edi
mov edi, dword [esp + 0xe0]
add esi, edi
cmp ebp, ebx
jg 0x519314
mov esi, dword [esp + 0xd8]
mov esi, 1
mov dword [esp + 0x5c], esi
mov esi, dword [esp + 0xd8]
jmp 0x51955e
mov dword [esp + 0x40], esi
mov esi, dword [esp + 0xd8]
cmp edi, esi
jg 0x51933f
mov dword [esp + 0x88], eax
mov eax, 1
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x88]
jmp 0x51955e
mov ebp, dword [esp + 8]
cmp ecx, ebp
jl 0x519363
mov ebp, dword [esp + 0xdc]
mov ebp, 1
mov dword [esp + 0x5c], ebp
mov ebp, dword [esp + 0xdc]
jmp 0x51955e
mov esi, dword [esp + 0xec]
mov edi, dword [esp + 0x40]
cmp esi, edi
jl 0x51939c
mov esi, dword [esp + 0xd8]
mov ebp, dword [esp + 0xdc]
mov edi, dword [esp + 0xe0]
mov ebp, 1
mov dword [esp + 0x5c], ebp
mov ebp, dword [esp + 0xdc]
jmp 0x51955e
cmp ebx, ebp
jge 0x519500
mov ebp, dword [esp + 0xdc]
cmp ebp, ecx
jle 0x5194e0
mov ebp, dword [esp + 0xd8]
cmp ebp, edi
jge 0x5194be
mov edi, dword [esp + 0xe0]
cmp edi, esi
jle 0x519499
cmp ebp, esi
jg 0x5193df
jne 0x51945e
cmp ebx, ecx
jle 0x51942c
mov esi, dword [esp + 0xdc]
dec esi
mov dword [esp + 0x20], esi
lea esi, [ebx - 1]
dec edi
dec ebp
mov ebx, dword [esp + 0x20]
mov dword [esp + 0x1c], esi
mov dword [esp + 0xb0], eax
mov eax, 0xffffffff
mov dword [esp + 0x5c], eax
mov esi, dword [esp + 0xec]
mov eax, dword [esp + 0xb0]
mov dword [esp + 0xa8], eax
mov eax, ebp
mov ebp, edi
mov edi, eax
mov eax, dword [esp + 0xb0]
jmp 0x51948e
mov dword [esp + 0xc0], eax
mov eax, dword [esp + 0xdc]
mov dword [esp + 0x1c], eax
mov dword [esp + 0xb8], ecx
mov ecx, 1
mov dword [esp + 0x5c], ecx
mov eax, dword [esp + 0xc0]
mov ecx, dword [esp + 0xb8]
jmp 0x51948e
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0xdc]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x98], ecx
mov ecx, 1
mov dword [esp + 0x5c], ecx
mov eax, dword [esp + 0xa0]
mov ecx, dword [esp + 0x98]
mov esi, ebp
mov ebp, dword [esp + 0x1c]
jmp 0x51955e
mov esi, ebp
mov ebp, dword [esp + 0xdc]
mov dword [esp + 0x90], eax
mov eax, 1
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x90]
jmp 0x51955e
mov esi, ebp
mov ebp, dword [esp + 0xdc]
mov edi, dword [esp + 0xe0]
mov edi, 1
mov dword [esp + 0x5c], edi
mov edi, dword [esp + 0xe0]
jmp 0x51955e
mov esi, dword [esp + 0xd8]
mov edi, dword [esp + 0xe0]
mov edi, 1
mov dword [esp + 0x5c], edi
mov edi, dword [esp + 0xe0]
jmp 0x51955e
mov esi, dword [esp + 0xd8]
mov ebp, dword [esp + 0xdc]
mov edi, dword [esp + 0xe0]
mov ebp, 1
mov dword [esp + 0x5c], ebp
mov ebp, dword [esp + 0xdc]
jmp 0x51955e
mov eax, ebp
mov ecx, dword [esp + 0xe8]
mov edx, esi
mov esi, dword [esp + 0xd8]
mov ebx, dword [esp + 0xd4]
mov ebp, dword [esp + 0xdc]
mov edi, dword [esp + 0xe0]
mov eax, 1
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0xe4]
mov dword [esp + 0x14], esi
mov dword [esp + 0x1c], ebp
mov dword [esp + 0x10], edi
mov edi, dword [esp + 0xec]
add edi, esi
mov ebp, dword [esp + 0xd8]
sub edi, ebp
mov dword [esp + 0x24], edi
mov edi, dword [esp + 0xf8]
add edi, esi
sub edi, ebp
lea ebp, [ecx + ebx]
mov ecx, edi
mov edi, dword [esp + 0xd4]
sub ebp, edi
mov dword [esp + 0x2c], ebp
mov ebp, dword [esp + 0xf4]
add ebp, ebx
sub ebp, edi
mov dword [esp + 0x48], ebp
mov edi, dword [esp + 0x1c]
sub edi, ebx
mov ebp, dword [esp + 0x2c]
add edi, ebp
mov dword [esp + 0x28], edi
nop
mov edi, dword [edx + 0x14]
sub esi, edi
imul esi, dword [edx + 0xc]
mov edi, dword [edx + 0x10]
sub ebx, edi
lea edi, [esi + ebx*4]
mov ebx, dword [esp + 0x48]
mov esi, dword [esp + 0x28]
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x14]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x80]
jmp 0x51962b
mov ebx, dword [esp + 0x18]
mov esi, dword [esp + 0x5c]
add ebx, esi
mov edi, dword [esp + 0x24]
add edi, esi
add ecx, esi
mov edx, dword [edx + 0xc]
imul edx, esi
mov esi, dword [esp + 0x54]
add edx, esi
mov esi, dword [esp + 0x2c]
mov ebp, esi
mov esi, dword [esp + 0x28]
mov dword [esp + 0x18], ebx
mov dword [esp + 0x24], edi
mov ebx, dword [esp + 0x48]
mov edi, edx
mov edx, dword [esp + 0xd0]
mov esi, dword [esp + 0x10]
mov ebp, dword [esp + 0x18]
cmp esi, ebp
je 0x519654
mov dword [esp + 0x44], ecx
mov dword [esp + 0x54], edi
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x78]
jmp 0x519766
add esp, 0xcc
ret
mov dword [esp + 0x70], ecx
mov esi, dword [esp + 0xc8]
movzx edi, byte [ebp + esi]
movzx edx, byte [ebp + esi + 1]
mov dword [esp + 0x6c], edx
movzx eax, byte [ebp + esi + 2]
mov dword [esp + 0x68], eax
movzx ebx, byte [ebp + esi + 3]
mov dword [esp + 0x64], ebx
mov ebx, dword [esp + 0x3c]
mov eax, dword [esp + 0x50]
imul ebx, eax
mov dword [esp + 0x60], ebx
mov eax, 0x80008001
mul ebx
shr edx, 0xf
lea eax, [edx - 0xffff]
neg eax
imul edi, eax
mov edx, edi
shl edi, 8
add edx, edi
mov edi, dword [esp + 0x34]
mov ebx, dword [esp + 0x50]
imul edi, ebx
add edx, edi
mov edi, eax
mov eax, edx
mov ecx, 0x80008001
mul ecx
shr edx, 0x17
mov byte [esi + ebp], dl
mov eax, dword [esp + 0x6c]
imul eax, edi
mov edx, eax
shl eax, 8
add eax, edx
mov edx, dword [esp + 0x70]
imul edx, ebx
add eax, edx
mul ecx
shr edx, 0x17
mov byte [esi + ebp + 1], dl
mov eax, dword [esp + 0x68]
imul eax, edi
mov edx, eax
shl eax, 8
add eax, edx
mov edx, dword [esp + 0x38]
imul edx, ebx
add eax, edx
mul ecx
shr edx, 0x17
mov byte [esi + ebp + 2], dl
mov eax, dword [esp + 0x64]
imul edi, eax
mov eax, edi
shl edi, 8
add eax, edi
mov edx, dword [esp + 0x60]
add eax, edx
mul ecx
shr edx, 0x17
mov byte [esi + ebp + 3], dl
mov eax, dword [esp + 0x5c]
lea edi, [ebp + eax*4]
mov edx, dword [esp + 0x30]
lea ebp, [eax + edx]
mov edx, dword [esp + 0x4c]
lea ebx, [edx + eax]
mov edx, dword [esp + 0x28]
mov esi, dword [esp + 0xd0]
mov eax, dword [esp + 0xe4]
mov ecx, dword [esp + 0x44]
mov edx, esi
mov esi, dword [esp + 0x10]
mov dword [esp + 0x30], ebp
mov ebp, dword [esp + 0x18]
mov esi, dword [esp + 0x30]
mov ebp, dword [esp + 0x28]
cmp esi, ebp
je 0x5195ee
mov dword [esp + 0x58], edi
mov dword [esp + 0x4c], ebx
mov ebp, dword [esp + 0xf0]
mov edi, dword [ebp + 4]
mov esi, dword [ebp]
mov dword [esp + 0xc8], esi
mov esi, dword [ebp + 0x14]
sub ecx, esi
imul ecx, dword [ebp + 0xc]
mov esi, dword [ebp + 0x10]
sub ebx, esi
lea esi, [ebx + ecx]
cmp edi, esi
jbe 0x5198d9
mov edi, dword [esp + 0xc8]
movzx esi, byte [esi + edi]
mov edi, esi
shl esi, 8
or esi, edi
mov dword [esp + 0x50], esi
mov ecx, dword [eax + 4]
mov edi, dword [eax]
mov dword [esp + 0xc8], edi
mov ebp, dword [eax + 0x14]
mov esi, dword [esp + 0x24]
sub esi, ebp
imul esi, dword [eax + 0xc]
mov ebp, dword [eax + 0x10]
mov edi, dword [esp + 0x30]
sub edi, ebp
lea ebp, [esi + edi*4]
cmp ecx, ebp
jbe 0x5198d2
mov dword [esp + 0x74], esi
mov dword [esp + 0xc], ebp
mov esi, dword [esp + 0xc8]
movzx ebp, byte [esi + ebp]
mov dword [esp + 0x70], ebp
mov ebp, dword [esp + 0x74]
lea ebp, [ebp + edi*4 + 1]
cmp ecx, ebp
jbe 0x5198cb
mov ebp, dword [esp + 0xc]
movzx ebp, byte [esi + ebp + 1]
mov dword [esp + 0x6c], ebp
mov ebp, dword [esp + 0x74]
lea ebp, [ebp + edi*4 + 2]
cmp ecx, ebp
jbe 0x5198c4
mov ebp, dword [esp + 0xc]
movzx ebp, byte [esi + ebp + 2]
mov dword [esp + 0x68], ebp
mov ebp, dword [esp + 0x74]
lea ebp, [ebp + edi*4 + 3]
cmp ecx, ebp
jbe 0x5198bd
mov ebp, dword [esp + 0xc]
movzx ebp, byte [esi + ebp + 3]
mov esi, dword [esp + 0x70]
mov edi, esi
shl esi, 8
or esi, edi
mov dword [esp + 0x34], esi
mov edi, dword [esp + 0x6c]
mov ecx, edi
shl edi, 8
or edi, ecx
mov ecx, edi
mov edi, dword [esp + 0x68]
shl edi, 8
mov esi, dword [esp + 0x68]
or edi, esi
mov dword [esp + 0x38], edi
mov esi, ebp
shl ebp, 8
or ebp, esi
mov dword [esp + 0x3c], ebp
mov esi, dword [edx]
mov dword [esp + 0xc8], esi
mov edi, dword [edx + 8]
mov ebp, dword [esp + 0x58]
lea esi, [ebp + 4]
cmp edi, esi
jb 0x5198b4
cmp ebp, esi
jbe 0x51965b
mov eax, ebp
mov ecx, esi
call fcn.00465ec0
mov edx, esi
mov ebx, edi
call fcn.00465ea0
mov eax, ebp
call fcn.00465e00
mov eax, ebp
call fcn.00465e00
mov eax, ebp
call fcn.00465e00
mov eax, ebp
call fcn.00465e00
mov eax, esi
mov ecx, edi
call fcn.00465e00
nop
call fcn.004649b0
jmp fcn.00519280