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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x6c
push ebx
push esi
push edi
mov edi, ecx
mov dword [esp + 0x54], edx
xor ecx, ecx
mov dword [esp + 0x68], edi
push ecx
push ecx
mov ebx, dword [edi + 8]
push ecx
mov byte [esp + 0x1f], cl
mov byte [esp + 0x5c], cl
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x78], ecx
mov dword [esp + 0x7c], ecx
mov ecx, ebx
push 0xf
pop edx
mov dword [esp + 0x40], ebx
call fcn.004746eb
mov ebx, dword [esp + 0x60]
add esp, 0xc
mov ecx, dword [ebp + 0x10]
xorps xmm0, xmm0
mov dword [esp + 0x74], eax
and dword [esp + 0x14], 0
mov eax, dword [ebx]
mov edx, dword [ebx + 0x18]
mov dword [esp + 0x28], edx
movlpd qword [esp + 0x60], xmm0
mov esi, dword [eax + 4]
movzx eax, byte [ecx + 0x3c]
imul ecx, eax, 0x48
mov dword [esp + 0x1c], esi
lea eax, [esi + 8]
add eax, ecx
mov dword [esp + 0x24], ecx
mov dword [esp + 0x58], eax
mov eax, dword [ecx + esi + 0x18]
mov dword [esp + 0x3c], eax
imul eax, dword [ebx + 0xc], 0x30
add eax, edx
mov dword [esp + 0x44], eax
mov eax, dword [ebp + 0x10]
mov ebx, dword [eax + 0x50]
mov dword [esp + 0x2c], ebx
cmp edx, dword [esp + 0x44]
jae 0x4b7185
mov ecx, dword [esp + 0x64]
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x60]
mov dword [esp + 0x18], ecx
test byte [edx + 0xa], 2
mov ecx, dword [edx]
mov dword [esp + 0x60], ecx
jne 0x4b7089
movzx eax, byte [eax + 0x3c]
mov edx, esi
push eax
call fcn.00486f31
pop ecx
test eax, eax
je 0x4b7089
mov edx, dword [esp + 0x60]
test edx, edx
je 0x4b7009
mov ecx, dword [edi]
push 0
push 0
call fcn.004861de
pop ecx
pop ecx
mov ecx, eax
mov dword [esp + 0x4c], eax
jmp 0x4b700f
xor ecx, ecx
mov dword [esp + 0x4c], ecx
mov edx, dword [esp + 0x30]
mov eax, dword [edi]
mov dword [esp + 0x60], eax
test edx, edx
jne 0x4b7023
mov dword [esp + 0x30], ecx
jmp 0x4b7089
test ecx, ecx
je 0x4b7089
mov eax, dword [ecx + 4]
or eax, dword [edx + 4]
and eax, 0x20000003
cmp eax, 0x20000000
jne 0x4b7077
cmp byte [edi + 0xd8], 2
jae 0x4b7077
push edx
mov edx, fcn.004860ab
mov ecx, edi
call fcn.004a2d3d
pop ecx
push dword [esp + 0x4c]
mov edx, fcn.004860ab
mov ecx, edi
call fcn.004a2d3d
mov ecx, dword [esp + 0x64]
mov edx, 0x9b
mov dword [esp], 0x421c54
call fcn.00485b64
jmp 0x4b7084
push ecx
push edx
push 0x2c
pop edx
mov ecx, edi
call fcn.00485bff
pop ecx
mov dword [esp + 0x34], eax
pop ecx
push dword [ebp + 0xc]
mov edx, dword [esp + 0x5c]
push dword [ebp + 8]
mov ecx, dword [esp + 0x30]
call fcn.004b6eb7
pop ecx
pop ecx
test eax, eax
je 0x4b7163
mov eax, dword [esp + 0x28]
xor esi, esi
mov edx, dword [eax + 0x18]
cmp edx, 0x40
jl 0x4b70be
mov dword [esp + 0x40], 0x80000000
jmp 0x4b70d7
mov eax, edx
xor ecx, ecx
bts esi, eax
cmp eax, 0x20
cmovae ecx, esi
xor esi, ecx
cmp eax, 0x40
cmovae ecx, esi
mov dword [esp + 0x40], ecx
cmp byte [esp + 0x13], 0
jne 0x4b7103
mov ecx, dword [esp + 0x3c]
add edx, edx
mov eax, dword [ecx + 4]
push dword [eax + edx*8]
push dword [ecx]
push 0x4328b8
push 0x11c
call fcn.0045b970
add esp, 0x10
mov byte [esp + 0x13], 1
mov eax, dword [esp + 0x40]
mov ecx, esi
and ecx, dword [esp + 0x18]
and eax, dword [esp + 0x20]
or ecx, eax
jne 0x4b715f
mov eax, dword [esp + 0x14]
mov edx, ebx
mov ecx, dword [edi]
inc eax
push eax
mov dword [esp + 0x64], eax
call fcn.004b7f19
pop ecx
test eax, eax
jne 0x4b76ce
mov ecx, dword [esp + 0x14]
mov eax, ebx
mov edx, dword [esp + 0x28]
or dword [esp + 0x18], esi
mov esi, dword [esp + 0x1c]
mov eax, dword [eax + 0x38]
mov dword [eax + ecx*4], edx
mov eax, dword [esp + 0x60]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x20]
or eax, dword [esp + 0x40]
mov dword [esp + 0x20], eax
jmp 0x4b7167
mov esi, dword [esp + 0x1c]
mov edx, dword [esp + 0x28]
mov eax, dword [ebp + 0x10]
add edx, 0x30
mov dword [esp + 0x28], edx
cmp edx, dword [esp + 0x44]
jb 0x4b6fc7
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x20]
jmp 0x4b7191
mov eax, dword [esp + 0x60]
mov edx, dword [esp + 0x64]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x14]
movzx eax, ax
mov word [ebx + 0x30], ax
mov word [ebx + 0x18], ax
mov eax, ebx
mov ebx, dword [esp + 0x3c]
mov dword [eax + 0x2c], 0x4241
or eax, 0xffffffff
cmp byte [ebx + 0x2b], 2
jne 0x4b71bc
mov dword [esp + 0x20], eax
jmp 0x4b71d6
mov eax, dword [esp + 0x18]
not edx
not eax
or edx, 0x80000000
and eax, dword [ecx + esi + 0x40]
and edx, dword [ecx + esi + 0x44]
mov dword [esp + 0x20], edx
movzx ecx, word [ebx + 0x22]
mov ebx, dword [esp + 0x34]
push 0x3f
mov dword [esp + 0x1c], eax
pop eax
mov dword [esp + 0x60], ecx
movzx edx, cx
cmp ax, cx
jge 0x4b71fd
mov dword [esp + 0x38], eax
xor eax, eax
mov dword [esp + 0x4c], eax
jmp 0x4b720f
movsx eax, cx
mov dword [esp + 0x38], eax
xor eax, eax
mov dword [esp + 0x4c], eax
cmp ax, dx
jge 0x4b7255
mov ebx, dword [esp + 0x4c]
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x38]
xor edx, edx
xor ecx, ecx
mov eax, ebx
bts edx, eax
cmp eax, 0x20
cmovae ecx, edx
xor edx, ecx
cmp eax, 0x40
cmovae ecx, edx
and edx, dword [esp + 0x18]
and ecx, edi
or edx, ecx
je 0x4b7240
inc dword [esp + 0x14]
inc ebx
cmp ebx, esi
jl 0x4b721b
mov edi, dword [esp + 0x68]
mov ebx, dword [esp + 0x34]
mov esi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x60]
mov eax, dword [esp + 0x24]
xor edx, edx
cmp dword [eax + esi + 0x44], edx
jg 0x4b7279
jl 0x4b7269
cmp dword [eax + esi + 0x40], edx
jae 0x4b7279
movsx eax, cx
mov ecx, dword [esp + 0x14]
add ecx, 0xffffffc1
add ecx, eax
mov dword [esp + 0x14], ecx
mov ecx, dword [edi]
lea eax, [esp + 0x60]
push eax
push edx
mov edx, dword [esp + 0x1c]
lea edx, [edx + 1]
call fcn.00493d5f
mov dword [esp + 0x30], eax
pop ecx
pop ecx
test eax, eax
je 0x4b76ce
mov ecx, dword [esp + 0x2c]
xor esi, esi
xorps xmm0, xmm0
movlpd qword [esp + 0x60], xmm0
mov dword [ecx + 0x20], eax
mov ecx, dword [esp + 0x3c]
mov dword [eax], 0x4328d4
mov dword [eax + 0xc], ecx
mov eax, dword [esp + 0x54]
mov eax, dword [eax + 0x18]
mov dword [esp + 0x40], eax
cmp eax, dword [esp + 0x44]
jae 0x4b73b8
mov ecx, dword [esp + 0x64]
mov ebx, dword [esp + 0x28]
mov dword [esp + 0x4c], ecx
mov ecx, dword [esp + 0x60]
mov dword [esp + 0x48], ecx
push dword [ebp + 0xc]
mov edx, dword [esp + 0x5c]
mov ecx, eax
push dword [ebp + 8]
call fcn.004b6eb7
pop ecx
pop ecx
test eax, eax
je 0x4b739f
mov ecx, dword [esp + 0x40]
xor edx, edx
mov ecx, dword [ecx + 0x18]
cmp ecx, 0x40
jl 0x4b7313
mov eax, 0x80000000
jmp 0x4b7326
xor eax, eax
bts edx, ecx
cmp ecx, 0x20
cmovae eax, edx
xor edx, eax
cmp ecx, 0x40
cmovae eax, edx
mov ecx, edx
mov dword [esp + 0x5c], eax
and ecx, dword [esp + 0x48]
and eax, dword [esp + 0x4c]
or ecx, eax
jne 0x4b739f
mov eax, dword [esp + 0x40]
or dword [esp + 0x48], edx
mov ecx, dword [eax]
mov ax, word [eax + 0x18]
mov dword [esp + 0x60], ecx
mov ecx, dword [esp + 0x4c]
or ecx, dword [esp + 0x5c]
mov edx, dword [esp + 0x60]
mov dword [esp + 0x4c], ecx
mov ecx, dword [ebx + 4]
mov word [ecx + esi*2], ax
mov ecx, edi
call fcn.004854b1
test eax, eax
je 0x4b7370
mov ecx, dword [eax]
jmp 0x4b7375
mov ecx, 0x4256c0
mov eax, dword [ebx + 0x20]
mov dword [eax + esi*4], ecx
inc esi
mov eax, dword [esp + 0x60]
mov ecx, dword [eax + 0xc]
test ecx, ecx
je 0x4b739f
call fcn.0048506e
mov ecx, dword [esp + 0x50]
cmp al, 0x42
push 1
movzx ecx, cl
pop eax
cmovne ecx, eax
mov dword [esp + 0x50], ecx
mov eax, dword [esp + 0x40]
add eax, 0x30
mov dword [esp + 0x40], eax
cmp eax, dword [esp + 0x44]
jb 0x4b72e3
mov ebx, dword [esp + 0x34]
and dword [esp + 0x60], 0
cmp dword [esp + 0x38], 0
jle 0x4b7410
mov ebx, dword [esp + 0x28]
mov edi, dword [esp + 0x60]
xor edx, edx
xor ecx, ecx
mov eax, edi
bts edx, eax
cmp eax, 0x20
cmovae ecx, edx
xor edx, ecx
cmp eax, 0x40
cmovae ecx, edx
and edx, dword [esp + 0x18]
and ecx, dword [esp + 0x20]
or edx, ecx
je 0x4b7401
mov eax, dword [ebx + 4]
mov word [eax + esi*2], di
mov eax, dword [ebx + 0x20]
mov dword [eax + esi*4], 0x4256c0
inc esi
inc edi
cmp edi, dword [esp + 0x38]
jl 0x4b73cc
mov edi, dword [esp + 0x68]
mov ebx, dword [esp + 0x34]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x24]
cmp dword [ecx + eax + 0x44], 0
jg 0x4b745a
jl 0x4b7428
cmp dword [ecx + eax + 0x40], 0
jae 0x4b745a
mov eax, dword [esp + 0x3c]
push 0x3f
pop edx
cmp dx, word [eax + 0x22]
jge 0x4b745a
mov ecx, dword [esp + 0x28]
mov ebx, eax
mov eax, dword [ecx + 4]
mov word [eax + esi*2], dx
mov eax, dword [ecx + 0x20]
mov dword [eax + esi*4], 0x4256c0
inc esi
movsx eax, word [ebx + 0x22]
inc edx
cmp edx, eax
jl 0x4b743b
mov ebx, dword [esp + 0x34]
mov eax, dword [esp + 0x28]
or ecx, 0xffffffff
push 0
mov eax, dword [eax + 4]
mov word [eax + esi*2], cx
mov eax, dword [esp + 0x2c]
mov ecx, dword [ebp + 0x10]
add ecx, 8
mov dword [esp + 0x48], ecx
mov eax, dword [eax + 0x20]
mov dword [eax + esi*4], 0x4256c0
mov eax, dword [edi + 0x28]
mov dword [ecx], eax
inc dword [edi + 0x28]
mov eax, dword [esp + 0x18]
inc eax
push eax
push dword [ecx]
mov ecx, ebx
push 0x74
pop edx
call fcn.004746eb
mov edx, dword [esp + 0x34]
add esp, 0xc
mov ecx, edi
call fcn.00474f4d
mov eax, dword [edi]
test dword [eax + 0x50], 0x80000
jne 0x4b7500
cmp byte [esp + 0x50], 0
mov eax, dword [esp + 0x44]
mov dword [esp + 0x44], eax
je 0x4b7500
mov eax, dword [esp + 0x54]
mov ecx, edi
push dword [ebp + 0x10]
mov edx, dword [eax]
call fcn.004b175c
inc dword [edi + 0x2c]
mov eax, dword [edi + 0x2c]
pop ecx
mov ecx, dword [ebp + 0x10]
push 0
push eax
push 0x2710
mov dword [ecx + 0x34], eax
mov ecx, ebx
push 0x4d
pop edx
call fcn.004746eb
mov eax, dword [ebp + 0x10]
add esp, 0xc
add eax, 8
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x24]
test byte [ecx + eax + 0x30], 0x20
je 0x4b7554
mov eax, dword [ecx + eax + 0x24]
mov ecx, ebx
mov dword [esp + 0x68], eax
xor eax, eax
push eax
push eax
push eax
push 0x47
pop edx
call fcn.004746eb
mov ecx, dword [esp + 0x28]
add esp, 0xc
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0x24]
push dword [eax + ecx + 0x20]
mov ecx, ebx
push 0
push dword [esp + 0x70]
push 0xb
pop edx
call fcn.004746eb
mov eax, dword [esp + 0x74]
add esp, 0xc
push 0xc
jmp 0x4b755c
mov eax, dword [ebp + 0x10]
push 0x24
mov eax, dword [eax + 4]
pop edx
push 0
push 0
push eax
mov ecx, ebx
call fcn.004746eb
mov dword [esp + 0x74], eax
add esp, 0xc
mov eax, dword [esp + 0x30]
test eax, eax
je 0x4b759a
dec dword [edi + 0x38]
mov ecx, dword [edi + 0x38]
push 0x10
push ecx
push eax
push edi
mov dword [esp + 0x7c], ecx
call fcn.0048a31b
mov eax, dword [esp + 0x3c]
add esp, 0x10
or dword [eax + 0x2c], 0x20000
mov ecx, edi
call fcn.0048b52b
mov edx, dword [esp + 0x28]
xor ecx, ecx
push ecx
push ecx
push ecx
push ecx
push eax
mov dword [esp + 0x74], eax
mov ecx, edi
mov eax, dword [ebp + 0x10]
push dword [eax + 4]
call fcn.004971bb
mov edx, dword [ebp + 0x10]
add esp, 0x18
mov dword [esp + 0x5c], eax
cmp dword [edx + 0x34], 0
je 0x4b75eb
mov ecx, dword [esp + 0x2c]
movzx ecx, word [ecx + 0x18]
push ecx
push eax
push 0
push dword [edx + 0x34]
mov edx, 0xb4
mov ecx, ebx
call fcn.00474a00
add esp, 0x10
mov eax, dword [esp + 0x44]
mov edx, 0x8a
push 0
push dword [esp + 0x64]
mov ecx, ebx
push dword [eax]
call fcn.004746eb
add esp, 0xc
mov ecx, ebx
push 0x10
pop edx
call fcn.00474c95
cmp dword [esp + 0x30], 0
je 0x4b7620
mov edx, dword [esp + 0x6c]
call fcn.00474ac0
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x1c]
test byte [ecx + eax + 0x30], 0x20
mov ecx, ebx
je 0x4b767e
add esi, dword [esp + 0x5c]
mov edx, dword [esp + 0x70]
call fcn.00474f68
mov edx, dword [ebp + 0x10]
mov ecx, dword [esp + 0x24]
mov dword [eax + 8], esi
push dword [edx + 8]
mov eax, dword [esp + 0x20]
mov esi, dword [esp + 0x6c]
push dword [ecx + eax + 0x28]
mov ecx, edi
push dword [edx + 4]
mov edx, esi
call fcn.004b6e24
add esp, 0xc
mov edx, esi
mov ecx, ebx
call fcn.00474744
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x24]
and dword [ecx + eax + 0x30], 0xffffffdf
jmp 0x4b76a3
mov esi, dword [esp + 0x68]
push 0
lea eax, [esi + 1]
push eax
mov eax, dword [ebp + 0x10]
push dword [eax + 4]
push 0x27
pop edx
call fcn.004746eb
add esp, 0xc
mov ecx, ebx
push 3
pop edx
call fcn.00474c95
mov edx, esi
mov ecx, ebx
call fcn.00474f68
mov ecx, dword [ebx + 0x6c]
mov edx, dword [esp + 0x60]
mov dword [eax + 8], ecx
mov ecx, edi
call fcn.0048b54a
mov edx, dword [esp + 0x74]
mov ecx, ebx
call fcn.00474f68
mov ecx, dword [ebx + 0x6c]
mov dword [eax + 8], ecx
mov eax, dword [esp + 0x30]
test eax, eax
je 0x4b76df
mov ecx, dword [edi]
mov edx, eax
call fcn.0048602a
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret