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

Disassembly:
push esi
push edi
mov edi, dword [esp + 0xc]
cmp edi, 0x8000b
mov esi, ecx
je 0x52b848
cmp edi, 0x8000c
jne 0x52b882
mov eax, dword [esi + 0x5c]
cmp eax, 0xfffffff3
je 0x52b878
cmp eax, 0xffffffd8
je 0x52b878
cmp eax, 0xffffffd9
je 0x52b878
cmp eax, 0xffffffe0
je 0x52b878
cmp edi, 0x8000b
mov ecx, dword [esi + 0x3c]
jne 0x52b871
call fcn.0056e330
jmp 0x52b880
call fcn.0056e4d0
jmp 0x52b880
mov ecx, dword [esi + 0x3c]
call fcn.0056e580
mov edi, eax
cmp edi, 0x8000b
push ebx
jne 0x52baa4
mov eax, dword [esi + 0x3c]
mov ecx, dword [eax + 0x2c]
mov edx, dword [ecx + 8]
cmp word [edx + 0x2c], 0
je 0x52b967
call fcn.005109a0
mov dword [esp + 0x10], eax
mov eax, dword [esi + 0x3c]
mov ecx, dword [eax + 0x2c]
mov eax, dword [ecx + 8]
xor edx, edx
mov dx, word [eax + 0x2c]
push 0
push esi
push esi
lea ecx, [esp + 0x1c]
push edx
call fcn.005113e0
test eax, eax
je 0x52b95e
mov eax, dword [esi]
xor ecx, ecx
mov cx, word [0x7324bc]
push ecx
mov ecx, esi
call dword [eax + 0x20]
push 1
mov ecx, 0xfffffff3
mov ebx, eax
call fcn.004e9f70
push eax
mov ecx, ebx
call fcn.004f2d90
mov edx, dword [esi + 0x3c]
mov eax, dword [edx + 0x2c]
mov eax, dword [eax + 8]
cmp word [eax + 0x14], 0
je 0x52b94b
mov cx, word [eax + 0x14]
call fcn.00512ac0
mov edi, eax
test edi, edi
je 0x52b95e
mov ecx, dword [esi + 0x38]
push 0xfffffffffffffff3
push 1
push ecx
mov cx, word [edi]
mov edx, esi
call fcn.0056d4c0
cmp eax, 0xffffffff
je 0x52b95e
push 1
mov ecx, 0xfffffff3
call fcn.004e9f70
push eax
mov ecx, ebx
call fcn.004f2d90
mov edi, dword [edi + 4]
test edi, edi
jne 0x52b917
jmp 0x52b95e
mov edx, dword [esi + 0x38]
mov cx, word [esi + 0x24]
push 0xfffffffffffffff3
push 1
push edx
mov edx, esi
call fcn.0056d4c0
mov ecx, dword [esp + 0x10]
call fcn.00510990
mov eax, dword [esi + 0x3c]
mov ecx, dword [eax + 0x2c]
mov edx, dword [ecx + 8]
cmp word [edx + 0x5a], 0
je 0x52ba27
call fcn.005109a0
mov dword [esp + 0x10], eax
test byte [esi + 0xbc], 3
jne 0x52b992
call fcn.004174d0
mov eax, dword [esi + 0x3c]
mov ecx, dword [eax + 0x2c]
mov eax, dword [ecx + 8]
xor edx, edx
mov dx, word [eax + 0x5a]
push 0
push esi
push esi
lea ecx, [esp + 0x1c]
push edx
call fcn.005113e0
test eax, eax
je 0x52ba1e
mov eax, dword [esi + 0x3c]
mov ecx, dword [eax + 0x2c]
mov eax, dword [ecx + 8]
cmp word [eax + 0x5c], 0
je 0x52ba13
mov cx, word [eax + 0x5c]
call fcn.00512ac0
mov edi, eax
test edi, edi
je 0x52ba1e
mov ecx, dword [esp + 0x10]
push 0
push esi
xor eax, eax
mov ax, word [edi]
push 0
push esi
push 1
push eax
call fcn.00512700
test eax, eax
jne 0x52ba0a
mov ecx, dword [esp + 0x10]
mov edx, dword [ecx + 0x38]
mov ecx, dword [0x759708]
push eax
movsx eax, word [esi + 0x18]
shl eax, 4
mov ecx, dword [eax + ecx]
call fcn.0040ca70
mov edi, dword [edi + 4]
test edi, edi
jne 0x52b9d2
jmp 0x52ba1e
push 0
xor edx, edx
xor ecx, ecx
call fcn.0040ca70
mov ecx, dword [esp + 0x10]
call fcn.00510990
or byte [esi + 0xbc], 0x10
mov edx, dword [esi + 0x3c]
mov eax, dword [edx + 0xa0]
test eax, eax
je 0x52ba46
mov edx, dword [eax + 0x38]
lea ecx, [esi + 0x48]
call fcn.004ea050
mov ecx, dword [esi + 0x3c]
test ecx, ecx
mov dword [esi + 0x4c], 0x8000b
je 0x52ba5a
mov eax, dword [ecx]
push 1
call dword [eax]
test byte [esi + 0xbc], 2
mov dword [esi + 0x3c], 0
mov edi, 0x80001
je 0x52baf0
mov ecx, dword [esi + 0x30]
mov eax, dword [ecx + 0x30]
test eax, eax
je 0x52baf0
mov ecx, dword [esi + 0x14]
mov edx, dword [ecx]
call dword [edx + 0x2c]
mov ebx, eax
test ebx, ebx
je 0x52baf0
mov ecx, dword [ebx + 0x38]
mov eax, dword [ecx]
call dword [eax + 0x78]
cmp eax, 0x17
jne 0x52baf0
mov ecx, dword [ebx + 0x38]
mov edx, ebx
call fcn.00497380
jmp 0x52baf0
cmp edi, 0x8000d
je 0x52bad4
cmp edi, 0x8000e
je 0x52bad4
cmp edi, 0x80003
je 0x52bad4
cmp edi, 0x80002
je 0x52bad4
cmp edi, 0x80007
je 0x52bad4
cmp edi, 0x80004
jne 0x52baf0
mov ecx, dword [esi + 0x3c]
test ecx, ecx
mov dword [esi + 0x4c], edi
je 0x52bae4
mov edx, dword [ecx]
push 1
call dword [edx]
mov dword [esi + 0x3c], 0
mov edi, 0x80001
test byte [esi + 0xbc], 3
pop ebx
jne 0x52baff
call fcn.004174d0
mov ecx, dword [esi + 0x3c]
test ecx, ecx
je 0x52bb1f
test byte [ecx + 8], 0x20
je 0x52bb1a
mov ecx, esi
call fcn.0054caf0
mov eax, edi
pop edi
pop esi
ret 4
call fcn.0054a6a0
mov eax, edi
pop edi
pop esi
ret 4