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

Disassembly:
sub esp, 0x5c
mov ecx, dword [esp + 0x60]
xor eax, eax
push ebx
push ebp
push esi
mov dword [esp + 0x18], eax
lea ebx, [ecx + 2]
mov dword [esp + 0x1c], eax
mov esi, ecx
mov dword [esp + 0x20], eax
not esi
mov dword [esp + 0x24], eax
mov ebp, 0xfffffffe
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], eax
mov eax, 1
sub eax, ecx
mov dword [esp + 0xc], 2
push edi
mov dword [esp + 0x18], esi
sub ebp, ecx
mov dword [esp + 0x14], eax
lea edx, [ebx + ebp]
mov edi, 8
mov eax, edx
shr edx, 1
and eax, 1
shl eax, 3
sub edi, eax
movzx eax, byte [ebx - 2]
mov ecx, edi
shl eax, cl
mov ecx, 8
or dword [esp + edx*4 + 0x1c], eax
lea edx, [ebx + esi]
mov eax, edx
lea esi, [esp + 0x1c]
shr eax, 1
and edx, 1
lea esi, [esi + eax*4]
shl edx, 3
movzx eax, byte [ebx - 1]
sub ecx, edx
shl eax, cl
lea edx, [esp + 0x1c]
or dword [esi], eax
mov ecx, edi
mov eax, dword [esp + 0x10]
lea esi, [esp + 0x1c]
shr eax, 1
lea edx, [edx + eax*4]
add dword [esp + 0x10], 4
movzx eax, byte [ebx]
shl eax, cl
mov ecx, 8
or dword [edx], eax
mov edx, dword [esp + 0x14]
add edx, ebx
mov eax, edx
and edx, 1
shr eax, 1
lea esi, [esi + eax*4]
shl edx, 3
movzx eax, byte [ebx + 1]
sub ecx, edx
add ebx, 4
shl eax, cl
or dword [esi], eax
mov esi, dword [esp + 0x18]
lea eax, [ebx + ebp]
cmp eax, 0x10
jl 0x499b32
or ebx, 0xffffffff
xor eax, eax
or ecx, ebx
xor edx, edx
xor esi, esi
cmp dword [esp + esi*4 + 0x1c], 0
jne 0x499bec
cmp ecx, 0xffffffff
jne 0x499be9
mov ecx, esi
mov edx, 1
jmp 0x499c01
inc edx
jmp 0x499c01
cmp ecx, 0xffffffff
je 0x499c01
cmp ebx, 0xffffffff
je 0x499bfa
cmp edx, eax
jle 0x499bfe
mov ebx, ecx
mov eax, edx
or ecx, 0xffffffff
inc esi
cmp esi, 8
jl 0x499bd4
mov dword [esp + 0x10], eax
cmp ecx, 0xffffffff
je 0x499c21
cmp ebx, 0xffffffff
je 0x499c19
cmp edx, eax
jle 0x499c21
mov ebx, ecx
mov dword [esp + 0x10], edx
mov eax, edx
cmp ebx, 0xffffffff
je 0x499c2e
cmp eax, 2
jge 0x499c2e
or ebx, 0xffffffff
lea esi, [esp + 0x3c]
xor edi, edi
cmp ebx, 0xffffffff
je 0x499c51
cmp edi, ebx
jl 0x499c51
add eax, ebx
cmp edi, eax
jge 0x499c4d
cmp edi, ebx
jne 0x499c8f
mov byte [esi], 0x3a
inc esi
jmp 0x499c8f
mov eax, dword [esp + 0x10]
test edi, edi
je 0x499c79
mov byte [esi], 0x3a
lea ebp, [esi + 1]
mov esi, ebp
cmp edi, 6
jne 0x499c79
test ebx, ebx
jne 0x499c79
cmp eax, edi
je 0x499c9b
cmp eax, 5
jne 0x499c79
cmp dword [esp + 0x30], 0xffff
je 0x499c9b
push dword [esp + edi*4 + 0x1c]
push 0x4f57ac
push 5
push esi
call fcn.004899f0
add esp, 0x10
add esi, eax
inc edi
cmp edi, 8
jge 0x499cdf
mov eax, dword [esp + 0x10]
jmp 0x499c34
lea eax, [esp + 0x6a]
sub eax, ebp
push eax
mov eax, dword [esp + 0x74]
add eax, 0xc
push ebp
push eax
call fcn.00499a50
add esp, 0xc
test eax, eax
jne 0x499ccc
call fcn.0042fb7f
pop edi
pop esi
pop ebp
mov dword [eax], 0x1c
xor eax, eax
pop ebx
add esp, 0x5c
ret
mov ecx, ebp
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x499cd1
sub ecx, edx
lea esi, [ecx + ebp]
jmp 0x499ce4
cmp ebx, 0xffffffff
je 0x499cf3
mov eax, dword [esp + 0x10]
add eax, ebx
cmp eax, 8
jne 0x499cf3
mov byte [esi], 0x3a
inc esi
mov byte [esi], 0
lea eax, [esp + 0x3c]
sub esi, eax
inc esi
cmp esi, dword [esp + 0x78]
ja 0x499cb7
mov edx, eax
mov eax, dword [esp + 0x74]
mov esi, eax
mov ecx, edx
sub esi, ecx
nop
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [esi + edx - 1], cl
test cl, cl
jne 0x499d10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x5c
ret