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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x50e219
sub esp, 0x60
mov eax, dword [esp + 0x70]
cmp eax, 4
jne 0x50e210
mov ecx, dword [esp + 0x6c]
cmp dword [ecx], 0x78696e75
jne 0x50e17d
mov edx, 1
mov ebx, dword [esp + 0x88]
cmp ebx, 4
jne 0x50e171
mov ebp, dword [esp + 0x84]
cmp dword [ebp], 0x6c616964
jne 0x50e0b6
mov dword [esp + 0x48], edx
mov ebx, dword [esp + 0x74]
test ebx, ebx
jne 0x50e090
xor ebp, ebp
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x50e087
xor ebx, ebx
xor ebp, ebp
mov esi, dword [esp + 0x7c]
test esi, esi
jne 0x50e04e
xor edi, edi
xchg edi, eax
test al, al
xchg edi, eax
je 0x50e042
xor esi, esi
xor edi, edi
test esi, esi
je 0x50dfdf
mov dword [esp + 0x80], edi
mov edi, dword [esp + 0x64]
mov dword [esp], edi
mov edi, dword [esp + 0x68]
mov dword [esp + 4], edi
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 1
mov dword [esp + 0x14], edx
mov dword [esp + 0x18], 0
mov byte [esp + 0x1c], 0
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebp
mov dword [esp + 0x28], esi
mov eax, dword [esp + 0x80]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x8c]
mov dword [esp + 0x30], eax
call fcn.005055c0
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x38]
test edx, edx
je 0x50dfbe
mov dword [esp + 0x90], 0
mov dword [esp + 0x94], edx
mov dword [esp + 0x98], ecx
add esp, 0x60
ret
mov dword [esp + 0x90], eax
mov dword [esp + 0x94], 0
mov dword [esp + 0x98], 0
add esp, 0x60
ret
cmp edx, 2
je 0x50e030
mov dword [esp + 0x50], eax
mov eax, 1
mov byte [esp + 0x43], al
mov eax, dword [esp + 0x50]
movzx edx, byte [esp + 0x43]
test dl, dl
jne 0x50e007
mov edx, dword [esp + 0x48]
jmp 0x50df33
mov eax, dword [0xe7ad5c]
mov ecx, dword [0xe7ad58]
mov dword [esp + 0x90], 0
mov dword [esp + 0x94], ecx
mov dword [esp + 0x98], eax
add esp, 0x60
ret
test ebx, ebx
setne dl
xor edx, 1
mov byte [esp + 0x43], dl
mov edx, dword [esp + 0x48]
jmp 0x50dff5
mov edi, dword [esp + 0x80]
jmp 0x50df2b
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x5c], ebp
mov eax, dword [esi + 0x1c]
mov ecx, dword [esp + 0x80]
mov dword [esp], ecx
call eax
movzx edi, byte [esp + 4]
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0x48]
mov ebx, dword [esp + 0x4c]
mov ebp, dword [esp + 0x5c]
mov esi, dword [esp + 0x7c]
jmp 0x50df1d
mov ebp, dword [esp + 0x78]
jmp 0x50df0f
mov eax, dword [ebx + 0x1c]
mov ecx, dword [esp + 0x78]
mov dword [esp], ecx
call eax
movzx ebp, byte [esp + 4]
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0x48]
mov ebx, dword [esp + 0x74]
jmp 0x50df01
cmp ebx, 6
jne 0x50e0e4
cmp dword [ebp], 0x7473696c
jne 0x50e0e4
cmp word [ebp + 4], 0x6e65
jne 0x50e0e4
mov ebx, dword [esp + 0x74]
mov edi, dword [esp + 0x80]
mov ebp, dword [esp + 0x78]
mov esi, dword [esp + 0x7c]
jmp 0x50df33
mov dword [esp], 0
lea eax, [0x9d47aa]
mov dword [esp + 4], eax
mov dword [esp + 8], 0xe
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], ebx
call fcn.00443570
mov eax, dword [esp + 0x18]
mov dword [esp + 0x44], eax
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x58], ecx
lea edx, [0x94a0a0]
mov dword [esp], edx
call fcn.0040af00
mov edi, dword [esp + 4]
mov eax, dword [esp + 0x44]
mov dword [edi + 4], eax
mov eax, dword [0xe8ff30]
test eax, eax
jne 0x50e166
mov eax, dword [esp + 0x58]
mov dword [edi], eax
mov dword [esp + 0x90], 0
lea eax, [0xaa4cf0]
mov dword [esp + 0x94], eax
mov dword [esp + 0x98], edi
add esp, 0x60
ret
mov eax, dword [esp + 0x58]
call fcn.00456ab0
jmp 0x50e143
mov ebp, dword [esp + 0x84]
jmp 0x50e0b6
cmp eax, 8
jne 0x50e19d
cmp dword [ecx], 0x78696e75
jne 0x50e19d
cmp dword [ecx + 4], 0x6d617267
jne 0x50e19d
mov edx, 2
jmp 0x50decb
cmp eax, 0xa
je 0x50e1d5
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00408790
mov eax, dword [esp + 8]
mov dword [esp + 0x90], 0
lea ecx, [0xaa61b0]
mov dword [esp + 0x94], ecx
mov dword [esp + 0x98], eax
add esp, 0x60
ret
mov dword [esp], ecx
lea edx, [0x9d17bc]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.00402350
movzx eax, byte [esp + 0xc]
test al, al
je 0x50e206
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 0x6c]
mov edx, 5
jmp 0x50decb
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 0x6c]
jmp 0x50e1a2
mov ecx, dword [esp + 0x6c]
jmp 0x50e17d
call fcn.00455270
jmp fcn.0050de90