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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x34
push ebx
push esi
mov esi, ecx
push edi
lea ebx, [esi + 0x18]
push ebx
call fcn.005c2694
mov edi, eax
mov eax, dword [esi + 0x14]
cmp byte [eax + 0x108], 0
mov dword [ebp - 0x1c], edi
je 0x5c038f
mov ecx, dword [esi + 8]
push str._n__
push edi
push str.method_count
add ecx, 0x18
call fcn.005a790d
mov ecx, eax
call fcn.005a7aa1
mov ecx, eax
call fcn.005a790d
xor edx, edx
cmp edi, edx
mov dword [ebp - 0xc], 1
je 0x5c039f
mov dword [ebp - 0xc], edi
mov eax, dword [esi + 0x40]
sub eax, dword [ebx]
cmp dword [ebp - 0xc], eax
jle 0x5c03d0
mov ecx, dword [esi]
mov eax, dword [ecx + 0x48]
mov eax, dword [eax + 0x54]
cmp eax, edx
jne 0x5c03be
push 0x15
call fcn.00595879
xor edx, edx
push edx
push edx
push edx
push edx
push edx
push edx
push 0x453
mov ecx, eax
call fcn.00596b74
mov ecx, dword [esi + 0x14]
push dword [ebp - 0xc]
add ecx, 0x78
call fcn.005b4383
mov eax, dword [esi + 0x14]
and dword [ebp - 4], 0
test edi, edi
mov dword [eax + 0xbc], edi
mov eax, dword [ebx]
mov dword [ebp - 0x14], eax
jle 0x5c0757
mov edi, dword [ebx]
sub edi, dword [ebp - 0x14]
push ebx
mov ecx, esi
call fcn.005c2694
mov dword [ebp - 8], eax
mov eax, dword [ebx]
lea ecx, [ebp - 0x34]
mov dword [ebp - 0x18], eax
call fcn.005a9cf2
lea eax, [ebp - 0x34]
push eax
push ebx
mov ecx, esi
call fcn.005bf09d
mov eax, dword [esi + 0x14]
cmp byte [eax + 0x108], 0
je 0x5c04a9
mov ecx, dword [esi + 8]
mov eax, str._n__
push eax
push dword [ebp - 8]
add ecx, 0x18
push str.________param_count
push eax
lea eax, [ebp - 0x34]
push eax
push str.________returnType
push 0x63cda8
push dword [ebp - 4]
push str.:method_
push edi
push 0x63ce8c
call fcn.005a790d
mov ecx, eax
call fcn.005a7aa1
mov ecx, eax
call fcn.005a790d
mov ecx, eax
call fcn.005a7aa1
mov ecx, eax
call fcn.005a790d
mov ecx, eax
call fcn.005a790d
mov ecx, eax
call fcn.005a7cc8
mov ecx, eax
call fcn.005a790d
mov ecx, eax
call fcn.005a790d
mov ecx, eax
call fcn.005a7aa1
mov ecx, eax
call fcn.005a790d
xor edi, edi
inc edi
cmp dword [ebp - 8], edi
jl 0x5c051d
lea ecx, [ebp - 0x28]
call fcn.005a9cf2
lea eax, [ebp - 0x28]
push eax
push ebx
mov ecx, esi
call fcn.005bf09d
mov eax, dword [esi + 0x14]
cmp byte [eax + 0x108], 0
je 0x5c050c
mov ecx, dword [esi + 8]
push str._n__
lea eax, [ebp - 0x28]
push eax
push 0x63cf68
push edi
push str.____________paramType_
add ecx, 0x18
call fcn.005a790d
mov ecx, eax
call fcn.005a7aa1
mov ecx, eax
call fcn.005a790d
mov ecx, eax
call fcn.005a7cc8
mov ecx, eax
call fcn.005a790d
xor eax, eax
inc edi
cmp edi, dword [ebp - 8]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], eax
jle 0x5c04b1
push ebx
mov ecx, esi
call fcn.005c2694
mov edi, eax
mov eax, dword [ebx]
cmp eax, dword [esi + 0x3c]
mov dword [ebp - 0x10], edi
jb 0x5c0536
cmp eax, dword [esi + 0x40]
jb 0x5c055f
mov ecx, dword [esi]
mov eax, dword [ecx + 0x48]
mov eax, dword [eax + 0x54]
xor edx, edx
cmp eax, edx
jne 0x5c054d
push 0x15
call fcn.00595879
xor edx, edx
push edx
push edx
push edx
push edx
push edx
push edx
push 0x453
mov ecx, eax
call fcn.00596b74
mov eax, dword [ebx]
movzx ecx, byte [eax]
inc eax
mov dword [ebx], eax
mov eax, dword [esi + 0x14]
cmp byte [eax + 0x108], 0
mov dword [ebp - 0xc], ecx
je 0x5c05ed
mov ecx, dword [esi + 8]
push edi
push str.________name_index
add ecx, 0x18
call fcn.005a790d
mov ecx, eax
call fcn.005a7af0
test edi, edi
jbe 0x5c05c7
mov eax, dword [esi + 0x14]
cmp edi, dword [eax + 0xd4]
jae 0x5c05c7
mov eax, dword [eax + 0x38]
mov eax, dword [eax + edi*4]
mov ecx, dword [esi + 8]
push 0x5f9344
push eax
push 0x63cf38
add ecx, 0x18
call fcn.005a790d
mov ecx, eax
call fcn.005a7c26
mov ecx, eax
call fcn.005a790d
mov ecx, dword [esi + 8]
push str._n__
push dword [ebp - 0xc]
add ecx, 0x18
push str._n________flags
call fcn.005a790d
mov ecx, eax
call fcn.005a7aa1
mov ecx, eax
call fcn.005a790d
xor edi, edi
test byte [ebp - 0xc], 0x20
jne 0x5c0652
mov eax, dword [esi + 8]
push edi
push dword [eax + 0x28]
push 0x64
call fcn.004426f0
add esp, 0xc
cmp eax, edi
je 0x5c0613
mov ecx, eax
call fcn.005b4b0c
mov edi, eax
cmp dword [ebp - 0x10], 0
je 0x5c0625
push dword [ebp - 0x10]
mov ecx, esi
call fcn.005bf2a1
jmp 0x5c0647
push dword [ebp - 4]
mov ecx, dword [esi + 8]
call fcn.00597027
mov ecx, dword [esi + 8]
push eax
push str.MethodInfo_
call fcn.00596f62
mov ecx, dword [esi + 8]
push eax
call fcn.00597e12
lea ecx, [edi + 0x38]
push eax
call fcn.00536500
jmp 0x5c0689
cmp dword [esi + 0x1c], edi
jne 0x5c067c
mov ecx, dword [esi]
mov eax, dword [ecx + 0x48]
mov eax, dword [eax + 0x54]
cmp eax, edi
jne 0x5c066a
push 0x15
call fcn.00595879
push edi
push edi
push edi
push edi
push edi
push edi
push 0x437
mov ecx, eax
call fcn.00596b74
mov eax, dword [esi + 0x1c]
mov ecx, dword [ebp - 4]
mov edi, dword [eax + ecx*4]
or byte [edi + 0x1f], 8
mov eax, dword [ebp - 0x18]
mov dword [edi + 0x24], eax
push dword [esi + 0x14]
lea ecx, [edi + 0xc]
call fcn.005ae4a4
mov eax, dword [ebp - 4]
mov dword [edi + 0x20], eax
mov eax, dword [ebp - 8]
mov dword [edi + 0x10], eax
inc eax
push eax
mov ecx, edi
call fcn.005c272f
mov eax, dword [ebp - 0xc]
or dword [edi + 0x1c], eax
test al, 8
je 0x5c070c
push ebx
mov ecx, esi
call fcn.005c2694
test eax, eax
mov dword [ebp - 0x18], eax
mov dword [edi + 0x14], eax
jle 0x5c06e0
mov dword [ebp - 0x10], eax
push ebx
mov ecx, esi
call fcn.005c2694
inc dword [ebx]
dec dword [ebp - 0x10]
jne 0x5c06ce
mov eax, dword [ebp - 0x18]
cmp eax, dword [ebp - 8]
jle 0x5c070c
mov ecx, dword [esi]
mov eax, dword [ecx + 0x48]
mov eax, dword [eax + 0x54]
test eax, eax
jne 0x5c06f8
push 0x15
call fcn.00595879
xor ecx, ecx
push ecx
push ecx
push ecx
push ecx
push ecx
push ecx
push 0x453
mov ecx, eax
call fcn.00596b74
test byte [ebp - 0xc], 0x80
je 0x5c072f
and dword [ebp - 0xc], 0
cmp dword [edi + 0x10], 0
jle 0x5c072f
push ebx
mov ecx, esi
call fcn.005c2694
inc dword [ebp - 0xc]
mov eax, dword [ebp - 0xc]
cmp eax, dword [edi + 0x10]
jl 0x5c071c
mov ecx, dword [esi + 0x14]
push edi
mov edi, dword [ebp - 4]
push edi
add ecx, 0x78
call fcn.005b453b
xor eax, eax
inc edi
cmp edi, dword [ebp - 0x1c]
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x2c], eax
mov dword [ebp - 4], edi
jl 0x5c03f8
mov eax, dword [ebx]
sub eax, dword [ebp - 0x14]
pop edi
add dword [0x74499c], eax
pop esi
pop ebx
leave
ret