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

Disassembly:
sub esp, 0xa8
push edi
mov edi, ecx
cmp dword [edi + 0x34], 0
mov dword [esp + 4], 0
jne 0x51abd1
xor eax, eax
pop edi
add esp, 0xa8
ret
cmp dword [edi], 0
jne 0x51ae6b
cmp dword [edi + 4], 0
je 0x51ae6b
cmp dword [edi + 0x7c], 0
push ebx
push ebp
push esi
je 0x51ad81
mov esi, dword [0x608334]
lea eax, [esp + 0x98]
push eax
call esi
mov ecx, dword [edi + 0x14]
push ecx
call dword [0x6084e4]
mov ebp, eax
test ebp, ebp
je 0x51ae68
lea edx, [esp + 0x14]
push edx
call esi
push 0
call dword [0x608040]
push ebp
mov ebx, eax
call dword [0x608068]
mov esi, eax
mov eax, dword [edi + 0x74]
push eax
push esi
call dword [0x60806c]
mov edx, dword [edi + 0x14]
lea ecx, [esp + 0x14]
push ecx
push edx
mov dword [esp + 0x2c], eax
call dword [0x6084d8]
push ebx
lea eax, [esp + 0x18]
push eax
push esi
call dword [0x6084ac]
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x1c]
push 0xcc0020
push eax
push ecx
push 0
push 0
push ebp
push eax
push ecx
push 0
push 0
push esi
call dword [0x608070]
mov ecx, dword [esp + 0x24]
push ecx
push esi
call dword [0x60806c]
push esi
call dword [0x608074]
push ebx
call dword [0x608048]
push 0x27
push str.e:prg_vs2008kclib_dx9include..kcClassBasekcClassBase.h
push 0x114
call fcn.005112c0
xor ebx, ebx
add esp, 0xc
cmp eax, ebx
je 0x51acba
mov ecx, eax
call fcn.0052eea0
mov esi, eax
jmp 0x51acbc
xor esi, esi
mov edx, dword [edi + 0x1c]
mov eax, dword [edi + 0x18]
push 4
push edx
push eax
mov ecx, esi
call fcn.0052f010
test eax, eax
jne 0x51acda
mov ecx, esi
call fcn.005305f0
xor esi, esi
lea ecx, [esp + 0x38]
push 0x80
push ecx
call fcn.00500830
add esp, 8
mov ecx, esi
call fcn.0052ef00
mov ecx, esi
mov dword [esp + 0x38], eax
call fcn.0052eee0
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x44], ecx
mov dword [esp + 0x54], ecx
mov ecx, esi
mov dword [esp + 0x40], eax
mov dword [esp + 0x48], ebx
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x50], eax
call fcn.0052eef0
mov ecx, dword [esp + 0x20]
mov edx, dword [edi + 0x78]
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x68], eax
mov dword [esp + 0x78], eax
mov dword [esp + 0x6c], ecx
mov dword [esp + 0x7c], ecx
add eax, eax
lea ecx, [esp + 0x38]
add eax, eax
push ecx
mov dword [esp + 0x64], 4
mov dword [esp + 0x68], edx
mov dword [esp + 0x74], ebx
mov dword [esp + 0x78], ebx
mov dword [esp + 0x84], eax
mov dword [esp + 0x8c], 1
call fcn.00547ce0
add esp, 4
jmp 0x51add5
push 0x27
push str.e:prg_vs2008kclib_dx9include..kcClassBasekcClassBase.h
push 0x114
call fcn.005112c0
add esp, 0xc
test eax, eax
je 0x51ada4
mov ecx, eax
call fcn.0052eea0
mov esi, eax
jmp 0x51ada6
xor esi, esi
mov eax, dword [0x7af284]
movzx edx, word [eax + 0x6c32]
movzx eax, word [eax + 0x6c30]
push 4
push edx
push eax
mov ecx, esi
call fcn.0052f010
test eax, eax
je 0x51ae61
mov ecx, dword [edi + 4]
push esi
call fcn.00521e20
push 0xff
mov ecx, esi
call fcn.004aba20
mov ecx, eax
call fcn.005315d0
test esi, esi
je 0x51ae68
lea ecx, [esp + 0x28]
push ecx
mov ecx, dword [edi + 8]
call fcn.00522360
mov edi, dword [esp + 0x30]
mov ebx, dword [esp + 0x34]
sub edi, dword [esp + 0x28]
sub ebx, dword [esp + 0x2c]
push 0x27
push str.e:prg_vs2008kclib_dx9include..kcClassBasekcClassBase.h
push 0x114
call fcn.005112c0
add esp, 0xc
test eax, eax
je 0x51ae30
mov ecx, eax
call fcn.0052eea0
mov ebp, eax
mov dword [esp + 0x10], ebp
jmp 0x51ae3c
mov dword [esp + 0x10], 0
mov ebp, dword [esp + 0x10]
mov ecx, esi
call fcn.0052ef00
push eax
push ebx
push edi
mov ecx, ebp
call fcn.0052f010
mov edx, dword [esp + 0x2c]
mov eax, dword [esp + 0x28]
push ebx
push edi
push edx
push eax
push esi
mov ecx, ebp
call fcn.0052fc40
mov ecx, esi
call fcn.005305f0
pop esi
pop ebp
pop ebx
mov eax, dword [esp + 4]
pop edi
add esp, 0xa8
ret