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

Disassembly:
push ebx
push edi
push esi
sub esp, 0x68
mov eax, dword [esp + 0x78]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x24]
add eax, 0xc
mov dword [esp], eax
call fcn.005cb090
mov dword [esp + 0x30], eax
mov edx, dword [esp + 0x30]
mov eax, 1
xor ecx, ecx
cmp edx, 0
cmove eax, ecx
cmp eax, 1
jne 0x5cd46a
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x30]
mov dword [esp + 0x20], ecx
mov dword [esp + 0x58], ecx
mov byte [esp + 0x3b], 2
mov eax, dword [eax]
mov dword [esp], ecx
movzx ecx, byte [esp + 0x3b]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.005ca8d0
mov dword [esp + 0x34], eax
lea eax, [esp + 0x34]
mov dword [esp], eax
call fcn.005cb1d0
cmp eax, 1
je 0x5cd477
jmp 0x5cd4b0
mov dword [esp + 0x28], 0
jmp 0x5cd5fd
lea eax, [esp + 0x34]
xor ecx, ecx
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.005cb1f0
mov ecx, eax
mov eax, dword [esp + 0x24]
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x5c], ecx
add eax, 0xc
mov dword [esp], eax
call fcn.005cb1d0
cmp eax, 0
je 0x5cd4e3
jmp 0x5cd536
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x24]
mov dword [ecx + 4], eax
mov edx, dword [esp + 0x34]
mov dword [ecx + 0xc], edx
mov dword [esp], eax
call fcn.005cd060
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 0x2c], eax
mov dword [esp + 0x28], 1
jmp 0x5cd5fd
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x24]
mov edi, dword [eax + 4]
mov esi, dword [eax + 0xc]
mov byte [esp + 0x4d], 2
mov byte [esp + 0x4e], 2
mov eax, dword [eax]
mov cl, byte [esp + 0x4d]
lea ebx, [esp + 0x40]
mov dword [esp], ebx
mov dword [esp + 4], edi
mov dword [esp + 8], esi
mov dword [esp + 0xc], edx
movzx ecx, cl
mov dword [esp + 0x10], ecx
movzx ecx, byte [esp + 0x4e]
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], eax
call fcn.005caa40
cmp dword [esp + 0x40], 0
je 0x5cd551
jmp 0x5cd57e
mov eax, esp
mov dword [eax + 8], 0x60f8d0
mov dword [eax + 4], 0x26
mov dword [eax], str.assertion_failed:_self.curr.tag____0
call fcn.005f6b70
mov eax, dword [esp + 0x24]
add eax, 0xc
mov dword [esp], eax
call fcn.005cb000
mov ecx, eax
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.005cd080
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x3c], eax
jmp 0x5cd592
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x48]
mov dword [esp + 0x60], eax
mov dword [esp + 0x64], ecx
mov dword [esp + 0x3c], eax
lea eax, [esp + 0x3c]
mov dword [esp], eax
call fcn.005cb1d0
cmp eax, 0
jne 0x5cd5b3
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x3c]
mov dword [eax + 0xc], ecx
jmp 0x5cd3fe
mov eax, dword [esp + 0x24]
mov ecx, dword [eax + 8]
mov dword [eax + 4], ecx
mov ecx, dword [eax + 8]
mov byte [esp + 0x4f], 2
mov eax, dword [eax]
mov dword [esp], ecx
movzx ecx, byte [esp + 0x4f]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.005ca8d0
mov ecx, eax
mov eax, dword [esp + 0x24]
mov dword [eax + 0xc], ecx
mov dword [esp + 0x50], 0
mov eax, dword [esp + 0x50]
mov dword [esp + 0x2c], eax
mov dword [esp + 0x28], 1
mov eax, dword [esp + 0x28]
mov edx, dword [esp + 0x2c]
add esp, 0x68
pop esi
pop edi
pop ebx
ret