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

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x90
mov eax, dword [esp + 0xa4]
mov ebp, dword [eax + 4]
mov ebx, dword [esp + 0xa8]
mov esi, dword [eax]
mov edx, ebp
shr edx, 0x10
mov eax, esi
mov ecx, dword [ebx]
shr eax, 0x10
mov dword [esp + 0x8c], edx
mov edx, ecx
imul edx, eax
test edx, edx
je 0x4bb540
movzx eax, dx
shr edx, 0x10
sub eax, edx
mov ecx, eax
shr ecx, 0x10
mov edi, eax
sub edi, ecx
mov eax, ebp
mov ecx, dword [ebx + 0xc]
add esi, dword [ebx + 4]
and eax, 0xffff
mov edx, ecx
mov dword [esp + 0x84], esi
imul edx, eax
mov esi, dword [esp + 0x8c]
add esi, dword [ebx + 8]
test edx, edx
mov dword [esp + 0x88], esi
lea esi, [ebx + 0xc]
je 0x4bb750
movzx ecx, dx
shr edx, 0x10
sub ecx, edx
mov ebx, ecx
shr ebx, 0x10
mov ebp, ecx
sub ebp, ebx
mov eax, dword [esp + 0x88]
xor eax, edi
mov ecx, dword [esi + 4]
and eax, 0xffff
mov edx, ecx
imul edx, eax
test edx, edx
lea ebx, [esi + 4]
je 0x4bb740
movzx eax, dx
shr edx, 0x10
sub eax, edx
mov edx, eax
shr edx, 0x10
mov esi, eax
sub esi, edx
mov eax, dword [esp + 0x84]
lea ecx, [ebx + 4]
xor eax, ebp
add eax, esi
mov dword [esp + 0x80], ecx
mov ecx, dword [ebx + 4]
and eax, 0xffff
mov edx, ecx
imul edx, eax
test edx, edx
je 0x4bb730
movzx ebx, dx
shr edx, 0x10
sub ebx, edx
mov edx, ebx
shr edx, 0x10
sub ebx, edx
mov edx, ebx
lea eax, [esi + edx]
xor ebp, eax
xor edi, edx
mov dword [esp + 0x7c], ebp
mov ebp, dword [esp + 0x84]
xor ebp, eax
mov eax, edi
mov edi, dword [esp + 0x80]
mov esi, dword [esp + 0x88]
mov ecx, dword [edi + 4]
xor esi, edx
and eax, 0xffff
mov edx, ecx
mov ebx, dword [esp + 0x80]
imul edx, eax
add ebx, 4
test edx, edx
je 0x4bb720
movzx eax, dx
shr edx, 0x10
sub eax, edx
mov ecx, eax
shr ecx, 0x10
mov edi, eax
sub edi, ecx
mov ecx, dword [ebx + 0xc]
movzx eax, word [esp + 0x7c]
mov edx, ecx
imul edx, eax
add esi, dword [ebx + 4]
add ebp, dword [ebx + 8]
test edx, edx
mov dword [esp + 0x74], esi
mov dword [esp + 0x78], ebp
lea esi, [ebx + 0xc]
je 0x4bb710
movzx ecx, dx
shr edx, 0x10
sub ecx, edx
mov ebx, ecx
shr ebx, 0x10
mov ebp, ecx
sub ebp, ebx
mov eax, dword [esp + 0x78]
xor eax, edi
mov ecx, dword [esi + 4]
and eax, 0xffff
mov edx, ecx
imul edx, eax
test edx, edx
lea ebx, [esi + 4]
je 0x4bb700
movzx eax, dx
shr edx, 0x10
sub eax, edx
mov edx, eax
shr edx, 0x10
mov esi, eax
sub esi, edx
mov eax, dword [esp + 0x74]
lea ecx, [ebx + 4]
xor eax, ebp
add eax, esi
mov dword [esp + 0x70], ecx
mov ecx, dword [ebx + 4]
and eax, 0xffff
mov edx, ecx
imul edx, eax
test edx, edx
je 0x4bb6f0
movzx ebx, dx
shr edx, 0x10
sub ebx, edx
mov edx, ebx
shr edx, 0x10
sub ebx, edx
mov edx, ebx
lea eax, [esi + edx]
xor ebp, eax
xor edi, edx
mov dword [esp + 0x6c], ebp
mov ebp, dword [esp + 0x74]
xor ebp, eax
mov eax, edi
mov edi, dword [esp + 0x70]
mov esi, dword [esp + 0x78]
mov ecx, dword [edi + 4]
xor esi, edx
and eax, 0xffff
mov edx, ecx
mov ebx, dword [esp + 0x70]
imul edx, eax
add ebx, 4
test edx, edx
je 0x4bb6e0
movzx eax, dx
shr edx, 0x10
sub eax, edx
mov ecx, eax
shr ecx, 0x10
mov edi, eax
sub edi, ecx
mov ecx, dword [ebx + 0xc]
movzx eax, word [esp + 0x6c]
mov edx, ecx
imul edx, eax
add esi, dword [ebx + 4]
add ebp, dword [ebx + 8]
test edx, edx
mov dword [esp + 0x64], esi
mov dword [esp + 0x68], ebp
lea esi, [ebx + 0xc]
je 0x4bb6d0
movzx ecx, dx
shr edx, 0x10
sub ecx, edx
mov ebx, ecx
shr ebx, 0x10
mov ebp, ecx
sub ebp, ebx
mov eax, dword [esp + 0x68]
xor eax, edi
mov ecx, dword [esi + 4]
and eax, 0xffff
mov edx, ecx
imul edx, eax
test edx, edx
lea ebx, [esi + 4]
je 0x4bb6c0
movzx eax, dx
shr edx, 0x10
sub eax, edx
mov edx, eax
shr edx, 0x10
mov esi, eax
sub esi, edx
mov eax, dword [esp + 0x64]
lea ecx, [ebx + 4]
xor eax, ebp
add eax, esi
mov dword [esp + 0x60], ecx
mov ecx, dword [ebx + 4]
and eax, 0xffff
mov edx, ecx
imul edx, eax
test edx, edx
je 0x4bb6b0
movzx ebx, dx
shr edx, 0x10
sub ebx, edx
mov edx, ebx
shr edx, 0x10
sub ebx, edx
mov edx, ebx
lea eax, [esi + edx]
xor ebp, eax
xor edi, edx
mov dword [esp + 0x5c], ebp
mov ebp, dword [esp + 0x64]
xor ebp, eax
mov eax, edi
mov edi, dword [esp + 0x60]
mov esi, dword [esp + 0x68]
mov ecx, dword [edi + 4]
xor esi, edx
and eax, 0xffff
mov edx, ecx
mov ebx, dword [esp + 0x60]
imul edx, eax
add ebx, 4
test edx, edx
je 0x4bb6a0
movzx eax, dx
shr edx, 0x10
sub eax, edx
mov ecx, eax
shr ecx, 0x10
mov edi, eax
sub edi, ecx
mov ecx, dword [ebx + 0xc]
movzx eax, word [esp + 0x5c]
mov edx, ecx
imul edx, eax
add esi, dword [ebx + 4]
add ebp, dword [ebx + 8]
test edx, edx
mov dword [esp + 0x54], esi
mov dword [esp + 0x58], ebp
lea esi, [ebx + 0xc]
je 0x4bb690
movzx ecx, dx
shr edx, 0x10
sub ecx, edx
mov ebx, ecx
shr ebx, 0x10
mov ebp, ecx
sub ebp, ebx
mov eax, dword [esp + 0x58]
xor eax, edi
mov ecx, dword [esi + 4]
and eax, 0xffff
mov edx, ecx
imul edx, eax
test edx, edx
lea ebx, [esi + 4]
je 0x4bb680
movzx eax, dx
shr edx, 0x10
sub eax, edx
mov edx, eax
shr edx, 0x10
mov esi, eax
sub esi, edx
mov eax, dword [esp + 0x54]
lea ecx, [ebx + 4]
xor eax, ebp
add eax, esi
mov dword [esp + 0x50], ecx
mov ecx, dword [ebx + 4]
and eax, 0xffff
mov edx, ecx
imul edx, eax
test edx, edx
je 0x4bb670
movzx ebx, dx
shr edx, 0x10
sub ebx, edx
mov edx, ebx
shr edx, 0x10
sub ebx, edx
mov edx, ebx
lea eax, [esi + edx]
xor ebp, eax
xor edi, edx
mov dword [esp + 0x4c], ebp
mov ebp, dword [esp + 0x54]
xor ebp, eax
mov eax, edi
mov edi, dword [esp + 0x50]
mov esi, dword [esp + 0x58]
mov ecx, dword [edi + 4]
xor esi, edx
and eax, 0xffff
mov edx, ecx
mov ebx, dword [esp + 0x50]
imul edx, eax
add ebx, 4
test edx, edx
je 0x4bb660
movzx eax, dx
shr edx, 0x10
sub eax, edx
mov ecx, eax
shr ecx, 0x10
mov edi, eax
sub edi, ecx
mov ecx, dword [ebx + 0xc]
movzx eax, word [esp + 0x4c]
mov edx, ecx
imul edx, eax
add esi, dword [ebx + 4]
add ebp, dword [ebx + 8]
test edx, edx
mov dword [esp + 0x44], esi
mov dword [esp + 0x48], ebp
lea esi, [ebx + 0xc]
je 0x4bb650
movzx ecx, dx
shr edx, 0x10
sub ecx, edx
mov ebx, ecx
shr ebx, 0x10
mov ebp, ecx
sub ebp, ebx
mov eax, dword [esp + 0x48]
xor eax, edi
mov ecx, dword [esi + 4]
and eax, 0xffff
mov edx, ecx
imul edx, eax
test edx, edx
lea ebx, [esi + 4]
je 0x4bb640
movzx eax, dx
shr edx, 0x10
sub eax, edx
mov edx, eax
shr edx, 0x10
mov esi, eax
sub esi, edx
mov eax, dword [esp + 0x44]
lea ecx, [ebx + 4]
xor eax, ebp
add eax, esi
mov dword [esp + 0x40], ecx
mov ecx, dword [ebx + 4]
and eax, 0xffff
mov edx, ecx
imul edx, eax
test edx, edx
je 0x4bb630
movzx ebx, dx
shr edx, 0x10
sub ebx, edx
mov edx, ebx
shr edx, 0x10
sub ebx, edx
mov edx, ebx
lea eax, [esi + edx]
xor ebp, eax
xor edi, edx
mov dword [esp + 0x3c], ebp
mov ebp, dword [esp + 0x44]
xor ebp, eax
mov eax, edi
mov edi, dword [esp + 0x40]
mov esi, dword [esp + 0x48]
mov ecx, dword [edi + 4]
xor esi, edx
and eax, 0xffff
mov edx, ecx
mov ebx, dword [esp + 0x40]
imul edx, eax
add ebx, 4
test edx, edx
je 0x4bb620
movzx eax, dx
shr edx, 0x10
sub eax, edx
mov ecx, eax
shr ecx, 0x10
mov edi, eax
sub edi, ecx
mov ecx, dword [ebx + 0xc]
movzx eax, word [esp + 0x3c]
mov edx, ecx
imul edx, eax
add esi, dword [ebx + 4]
add ebp, dword [ebx + 8]
test edx, edx
mov dword [esp + 0x34], esi
mov dword [esp + 0x38], ebp
lea esi, [ebx + 0xc]
je 0x4bb610
movzx ecx, dx
shr edx, 0x10
sub ecx, edx
mov ebx, ecx
shr ebx, 0x10
mov ebp, ecx
sub ebp, ebx
mov eax, dword [esp + 0x38]
xor eax, edi
mov ecx, dword [esi + 4]
and eax, 0xffff
mov edx, ecx
imul edx, eax
test edx, edx
lea ebx, [esi + 4]
je 0x4bb600
movzx eax, dx
shr edx, 0x10
sub eax, edx
mov edx, eax
shr edx, 0x10
mov esi, eax
sub esi, edx
mov eax, dword [esp + 0x34]
lea ecx, [ebx + 4]
xor eax, ebp
add eax, esi
mov dword [esp + 0x30], ecx
mov ecx, dword [ebx + 4]
and eax, 0xffff
mov edx, ecx
imul edx, eax
test edx, edx
je 0x4bb5f0
movzx ebx, dx
shr edx, 0x10
sub ebx, edx
mov edx, ebx
shr edx, 0x10
sub ebx, edx
mov edx, ebx
lea eax, [esi + edx]
xor ebp, eax
xor edi, edx
mov dword [esp + 0x2c], ebp
mov ebp, dword [esp + 0x34]
xor ebp, eax
mov eax, edi
mov edi, dword [esp + 0x30]
mov esi, dword [esp + 0x38]
mov ecx, dword [edi + 4]
xor esi, edx
and eax, 0xffff
mov edx, ecx
mov ebx, dword [esp + 0x30]
imul edx, eax
add ebx, 4
test edx, edx
je 0x4bb5e0
movzx eax, dx
shr edx, 0x10
sub eax, edx
mov ecx, eax
shr ecx, 0x10
mov edi, eax
sub edi, ecx
mov ecx, dword [ebx + 0xc]
movzx eax, word [esp + 0x2c]
mov edx, ecx
imul edx, eax
add esi, dword [ebx + 4]
add ebp, dword [ebx + 8]
test edx, edx
mov dword [esp + 0x24], esi
mov dword [esp + 0x28], ebp
lea esi, [ebx + 0xc]
je 0x4bb5d0
movzx ecx, dx
shr edx, 0x10
sub ecx, edx
mov ebx, ecx
shr ebx, 0x10
mov ebp, ecx
sub ebp, ebx
mov eax, dword [esp + 0x28]
xor eax, edi
mov ecx, dword [esi + 4]
and eax, 0xffff
mov edx, ecx
imul edx, eax
test edx, edx
lea ebx, [esi + 4]
je 0x4bb5c0
movzx eax, dx
shr edx, 0x10
sub eax, edx
mov edx, eax
shr edx, 0x10
mov esi, eax
sub esi, edx
mov eax, dword [esp + 0x24]
lea ecx, [ebx + 4]
xor eax, ebp
add eax, esi
mov dword [esp + 0x20], ecx
mov ecx, dword [ebx + 4]
and eax, 0xffff
mov edx, ecx
imul edx, eax
test edx, edx
je 0x4bb5b0
movzx ebx, dx
shr edx, 0x10
sub ebx, edx
mov edx, ebx
shr edx, 0x10
sub ebx, edx
mov edx, ebx
lea eax, [esi + edx]
xor ebp, eax
xor edi, edx
xor eax, dword [esp + 0x24]
mov esi, dword [esp + 0x20]
mov dword [esp + 0x18], ebp
mov dword [esp + 0x1c], eax
mov ebp, dword [esp + 0x28]
mov eax, edi
mov ecx, dword [esi + 4]
xor ebp, edx
and eax, 0xffff
mov edx, ecx
mov ebx, dword [esp + 0x20]
imul edx, eax
add ebx, 4
test edx, edx
je 0x4bb5a0
movzx ecx, dx
shr edx, 0x10
sub ecx, edx
mov edi, ecx
shr edi, 0x10
mov esi, ecx
sub esi, edi
mov ecx, dword [ebx + 0xc]
add ebp, dword [ebx + 4]
movzx eax, word [esp + 0x18]
mov edx, ecx
mov dword [esp + 0xc], ebp
imul edx, eax
mov ebp, dword [esp + 0x1c]
add ebp, dword [ebx + 8]
test edx, edx
mov dword [esp + 0x14], ebp
lea edi, [ebx + 0xc]
je 0x4bb590
movzx eax, dx
shr edx, 0x10
sub eax, edx
mov ebx, eax
shr ebx, 0x10
mov ebp, eax
sub ebp, ebx
mov eax, dword [esp + 0x14]
lea edx, [edi + 4]
xor eax, esi
mov ecx, dword [edi + 4]
and eax, 0xffff
mov dword [esp + 0x10], edx
mov edx, ecx
imul edx, eax
test edx, edx
je 0x4bb580
movzx ecx, dx
shr edx, 0x10
sub ecx, edx
mov edi, ecx
shr edi, 0x10
mov ebx, ecx
sub ebx, edi
mov eax, dword [esp + 0x10]
add eax, 4
mov dword [esp + 8], eax
mov eax, dword [esp + 0xc]
xor eax, ebp
mov edx, dword [esp + 0x10]
add eax, ebx
mov ecx, dword [edx + 4]
and eax, 0xffff
mov edx, ecx
imul edx, eax
test edx, edx
je 0x4bb570
movzx edi, dx
shr edx, 0x10
sub edi, edx
mov ecx, edi
shr ecx, 0x10
sub edi, ecx
mov edx, edi
lea eax, [ebx + edx]
xor ebp, eax
xor esi, edx
mov dword [esp], ebp
mov ebp, dword [esp + 0xc]
xor ebp, eax
mov eax, esi
mov esi, dword [esp + 8]
xor edx, dword [esp + 0x14]
mov ecx, dword [esi + 4]
and eax, 0xffff
mov dword [esp + 4], edx
mov edx, ecx
mov edi, dword [esp + 8]
imul edx, eax
add edi, 4
test edx, edx
je 0x4bb560
movzx ecx, dx
shr edx, 0x10
sub ecx, edx
mov edx, ecx
shr edx, 0x10
mov ebx, ecx
sub ebx, edx
mov ecx, dword [edi + 0xc]
movzx eax, word [esp]
mov edx, ecx
mov esi, dword [esp + 4]
imul edx, eax
add ebp, dword [edi + 4]
add esi, dword [edi + 8]
test edx, edx
je 0x4bb550
movzx edi, dx
shr edx, 0x10
sub edi, edx
mov eax, edi
shr eax, 0x10
sub edi, eax
mov edx, edi
mov ecx, ebp
shl ebx, 0x10
and ecx, 0xffff
or ecx, ebx
shl esi, 0x10
movzx ebx, dx
mov ebp, dword [esp + 0xa4]
or ebx, esi
mov dword [ebp], ecx
mov dword [ebp + 4], ebx
add esp, 0x90
pop ebx
pop esi
pop edi
pop ebp
ret
neg eax
sub eax, ecx
lea edi, [eax + 1]
jmp 0x4bad7e
neg eax
sub eax, ecx
lea edx, [eax + 1]
jmp 0x4bb508
neg eax
sub eax, ecx
lea ebx, [eax + 1]
jmp 0x4bb4dd
neg eax
sub eax, ecx
lea edx, [eax + 1]
jmp 0x4bb492
neg eax
sub eax, ecx
lea ebx, [eax + 1]
jmp 0x4bb455
neg eax
sub eax, ecx
lea ebp, [eax + 1]
jmp 0x4bb422
neg eax
sub eax, ecx
lea esi, [eax + 1]
jmp 0x4bb3e7
neg eax
sub eax, ecx
lea edx, [eax + 1]
jmp 0x4bb39b
neg eax
sub eax, ecx
lea esi, [eax + 1]
jmp 0x4bb366
neg eax
sub eax, ecx
lea ebp, [eax + 1]
jmp 0x4bb337
neg eax
sub eax, ecx
lea edi, [eax + 1]
jmp 0x4bb300
neg eax
sub eax, ecx
lea edx, [eax + 1]
jmp 0x4bb2b6
neg eax
sub eax, ecx
lea esi, [eax + 1]
jmp 0x4bb281
neg eax
sub eax, ecx
lea ebp, [eax + 1]
jmp 0x4bb252
neg eax
sub eax, ecx
lea edi, [eax + 1]
jmp 0x4bb21b
neg eax
sub eax, ecx
lea edx, [eax + 1]
jmp 0x4bb1d1
neg eax
sub eax, ecx
lea esi, [eax + 1]
jmp 0x4bb19c
neg eax
sub eax, ecx
lea ebp, [eax + 1]
jmp 0x4bb16d
neg eax
sub eax, ecx
lea edi, [eax + 1]
jmp 0x4bb136
neg eax
sub eax, ecx
lea edx, [eax + 1]
jmp 0x4bb0ec
neg eax
sub eax, ecx
lea esi, [eax + 1]
jmp 0x4bb0b7
neg eax
sub eax, ecx
lea ebp, [eax + 1]
jmp 0x4bb088
neg eax
sub eax, ecx
lea edi, [eax + 1]
jmp 0x4bb051
neg eax
sub eax, ecx
lea edx, [eax + 1]
jmp 0x4bb007
neg eax
sub eax, ecx
lea esi, [eax + 1]
jmp 0x4bafd2
neg eax
sub eax, ecx
lea ebp, [eax + 1]
jmp 0x4bafa3
neg eax
sub eax, ecx
lea edi, [eax + 1]
jmp 0x4baf6c
neg eax
sub eax, ecx
lea edx, [eax + 1]
jmp 0x4baf22
neg eax
sub eax, ecx
lea esi, [eax + 1]
jmp 0x4baeed
neg eax
sub eax, ecx
lea ebp, [eax + 1]
jmp 0x4baebe
neg eax
sub eax, ecx
lea edi, [eax + 1]
jmp 0x4bae87
neg eax
sub eax, ecx
lea edx, [eax + 1]
jmp 0x4bae31
neg eax
sub eax, ecx
lea esi, [eax + 1]
jmp 0x4badf6
neg eax
sub eax, ecx
lea ebp, [eax + 1]
jmp 0x4badc4