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

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0xfc
mov edi, dword [esp + 0x110]
mov edx, edi
and edx, 0xfff
mov ebp, edi
shr ebp, 0xc
mov eax, edi
mov dword [esp + 0x10], edx
mov edx, dword [0x563b00]
shr eax, 0x18
and ebp, 0xfff
test edx, edx
mov dword [esp + 0x14], eax
je 0x4875a0
mov esi, edi
and esi, 0xff000000
mov dword [esp + 0x28], esi
sub esp, 0xc
lea ebx, [esp + 0x34]
push ebx
call dword [edx + 8]
add esp, 0x10
test eax, eax
mov dword [esp + 0xc], 0
je 0x4873fc
mov edx, dword [eax + 4]
mov dword [esp + 0xc], edx
mov edx, dword [0x563b00]
test edx, edx
je 0x487550
mov ebx, edi
and ebx, 0xfffff000
mov dword [esp + 0x20], ebx
sub esp, 0xc
lea ecx, [esp + 0x2c]
push ecx
call dword [edx + 8]
add esp, 0x10
test eax, eax
mov dword [esp + 8], 0
je 0x487437
mov esi, dword [eax + 4]
mov dword [esp + 8], esi
mov edx, dword [0x563b00]
test edx, edx
je 0x487500
mov eax, edi
and eax, 0xff000fff
mov dword [esp + 0x18], eax
sub esp, 0xc
lea ebx, [esp + 0x24]
push ebx
call dword [edx + 8]
mov esi, edi
and esi, 0xfff
add esp, 0x10
test eax, eax
je 0x48764e
mov ebx, dword [eax + 4]
mov ecx, dword [esp + 0xc]
test ecx, ecx
je 0x4876cc
mov eax, dword [esp + 8]
test eax, eax
je 0x4876ed
test ebx, ebx
je 0x487707
test ebx, ebx
mov eax, ebx
push esi
je 0x487680
push eax
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4876a0
push eax
mov eax, dword [esp + 0x18]
test eax, eax
je 0x4876c0
push eax
push edi
push str.error:_08lX:_s:_s:_s
mov eax, dword [esp + 0x130]
push eax
mov edx, dword [esp + 0x130]
push edx
call sym._BIO_snprintf
add esp, 0x14
mov ebx, dword [esp + 0x120]
push ebx
call sym._strlen
add esp, 0x10
mov edi, dword [esp + 0x118]
dec edi
cmp eax, edi
je 0x4875f0
add esp, 0xfc
pop ebx
pop esi
pop edi
pop ebp
ret
push 0x11f
push str..cryptoerrerr.c
push 1
push 9
call sym._CRYPTO_lock
mov edx, dword [0x563b00]
add esp, 0x10
test edx, edx
jne 0x48752a
mov dword [0x563b00], 0x539440
push 0x122
push str..cryptoerrerr.c
push 1
push 0xa
call sym._CRYPTO_lock
add esp, 0x10
mov edx, dword [0x563b00]
jmp 0x487445
push 0x11f
push str..cryptoerrerr.c
push 1
push 9
call sym._CRYPTO_lock
mov eax, dword [0x563b00]
add esp, 0x10
test eax, eax
jne 0x487579
mov dword [0x563b00], 0x539440
push 0x122
push str..cryptoerrerr.c
push 1
push 0xa
call sym._CRYPTO_lock
add esp, 0x10
mov edx, dword [0x563b00]
jmp 0x48740a
push 0x11f
push str..cryptoerrerr.c
push 1
push 9
call sym._CRYPTO_lock
mov ecx, dword [0x563b00]
add esp, 0x10
test ecx, ecx
jne 0x4875ca
mov dword [0x563b00], 0x539440
push 0x122
push str..cryptoerrerr.c
push 1
push 0xa
call sym._CRYPTO_lock
add esp, 0x10
mov edx, dword [0x563b00]
jmp 0x4873cf
cmp dword [esp + 0x118], 4
jbe 0x4874f5
mov eax, dword [esp + 0x114]
mov ebp, dword [esp + 0x118]
lea ebx, [eax + ebp]
lea esi, [ebx - 5]
mov edi, 3
mov esi, esi
lea edi, [edi]
sub esp, 8
push 0x3a
push eax
call sym._strchr
add esp, 0x10
test eax, eax
je 0x487636
cmp esi, eax
jae 0x48763d
lea eax, [ebx - 5]
mov byte [ebx - 5], 0x3a
inc eax
inc esi
inc ebx
dec edi
jns 0x487620
add esp, 0xfc
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [esp + 0x18], esi
sub esp, 0xc
push ebx
mov ebx, dword [0x563b00]
call dword [ebx + 8]
add esp, 0x10
xor ebx, ebx
test eax, eax
jne 0x48746e
jmp 0x487471
lea eax, [esp + 0x34]
push eax
mov eax, dword [esp + 0x10]
test eax, eax
jne 0x4874a9
jmp 0x4876a0
lea eax, [esp + 0x78]
push eax
mov eax, dword [esp + 0x18]
test eax, eax
jne 0x4874b6
jmp 0x4876c0
lea eax, [esp + 0xbc]
jmp 0x4874b6
mov edx, dword [esp + 0x14]
push edx
push str.lib__lu_
push 0x40
lea esi, [esp + 0xbc]
push esi
call sym._BIO_snprintf
add esp, 0x10
jmp 0x48747d
push ebp
push str.func__lu_
push 0x40
lea ebp, [esp + 0x7c]
push ebp
call sym._BIO_snprintf
add esp, 0x10
jmp 0x487489
mov esi, dword [esp + 0x10]
push esi
push str.reason__lu_
push 0x40
lea ecx, [esp + 0x3c]
push ecx
call sym._BIO_snprintf
add esp, 0x10
jmp 0x487491