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

Disassembly:
sub esp, 0x54
push ebx
push ebp
push esi
push edi
mov dword [esp + 0x14], ecx
mov eax, dword [esp + 0x68]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x80]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x84]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x88]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x8c]
mov ebx, dword [esp + 0xa0]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x90]
mov ebp, dword [esp + 0xa4]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x94]
mov esi, dword [esp + 0x7c]
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x98]
mov edi, dword [esp + 0x78]
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x9c]
mov dword [esp + 0x4c], eax
mov al, byte [esp + 0xa8]
push esi
push edi
mov dword [esp + 0x30], edi
mov dword [esp + 0x34], esi
mov dword [esp + 0x58], ebx
mov dword [esp + 0x5c], ebp
mov byte [esp + 0x60], cl
mov byte [esp + 0x61], dl
mov byte [esp + 0x62], al
call fcn.00406190
cmp eax, 2
jne 0x456bd8
mov eax, dword [esp + 0x6c]
mov ecx, dword [esp + 0x68]
and eax, esi
and ecx, edi
push eax
push ecx
call fcn.00406190
cmp eax, 1
jne 0x456bd8
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0x70]
and eax, esi
and ecx, edi
push eax
push ecx
call fcn.00406190
cmp eax, 1
jne 0x456bd8
mov ecx, dword [esp + 0x68]
mov eax, dword [esp + 0x6c]
and ecx, dword [esp + 0x70]
and eax, dword [esp + 0x74]
or ecx, eax
jne 0x456bd8
mov edx, dword [esp + 0x80]
mov ecx, edi
mov eax, esi
and ecx, edx
and eax, dword [esp + 0x84]
or ecx, eax
jne 0x456bd8
mov ecx, edi
mov eax, esi
and ecx, dword [esp + 0x88]
and eax, dword [esp + 0x8c]
or ecx, eax
jne 0x456bd8
mov ecx, edi
mov eax, esi
and ecx, dword [esp + 0x90]
and eax, dword [esp + 0x94]
or ecx, eax
jne 0x456bd8
mov ecx, edi
mov eax, esi
and ecx, dword [esp + 0x98]
and eax, dword [esp + 0x9c]
or ecx, eax
jne 0x456bd8
mov ecx, edi
mov eax, esi
and ecx, ebx
and eax, ebp
or ecx, eax
jne 0x456bd8
mov eax, dword [esp + 0x84]
mov ecx, edx
and ecx, dword [esp + 0x88]
and eax, dword [esp + 0x8c]
or ecx, eax
jne 0x456bd8
mov eax, dword [esp + 0x84]
mov ecx, edx
and ecx, dword [esp + 0x90]
and eax, dword [esp + 0x94]
or ecx, eax
jne 0x456bd8
mov eax, dword [esp + 0x84]
mov ecx, edx
and ecx, dword [esp + 0x98]
and eax, dword [esp + 0x9c]
or ecx, eax
jne 0x456bd8
mov eax, dword [esp + 0x84]
mov ecx, edx
and ecx, ebx
and eax, ebp
or ecx, eax
jne 0x456bd8
mov ecx, dword [esp + 0x88]
mov eax, dword [esp + 0x8c]
and ecx, dword [esp + 0x90]
and eax, dword [esp + 0x94]
or ecx, eax
jne 0x456bd8
mov ecx, dword [esp + 0x88]
mov eax, dword [esp + 0x8c]
and ecx, dword [esp + 0x98]
and eax, dword [esp + 0x9c]
or ecx, eax
jne 0x456bd8
mov ecx, dword [esp + 0x88]
mov eax, dword [esp + 0x8c]
and ecx, ebx
and eax, ebp
or ecx, eax
jne 0x456bd8
mov ecx, dword [esp + 0x90]
mov eax, dword [esp + 0x94]
and ecx, dword [esp + 0x98]
and eax, dword [esp + 0x9c]
or ecx, eax
jne 0x456bd8
mov ecx, dword [esp + 0x90]
mov eax, dword [esp + 0x94]
and ecx, ebx
and eax, ebp
or ecx, eax
jne 0x456bd8
mov ecx, dword [esp + 0x98]
mov eax, dword [esp + 0x9c]
and ecx, ebx
and eax, ebp
or ecx, eax
jne 0x456bd8
mov eax, ebp
movzx ecx, bl
and eax, 0xff000000
or ecx, eax
jne 0x456bd8
or esi, dword [esp + 0x84]
or edi, edx
or edi, dword [esp + 0x88]
or esi, dword [esp + 0x8c]
or edi, dword [esp + 0x90]
or esi, dword [esp + 0x94]
or edi, dword [esp + 0x98]
or esi, dword [esp + 0x9c]
or edi, ebx
mov ecx, dword [esp + 0x68]
or esi, ebp
mov eax, dword [esp + 0x6c]
or ecx, dword [esp + 0x70]
or eax, dword [esp + 0x74]
cmp ecx, edi
jne 0x456bd8
cmp eax, esi
jne 0x456bd8
lea ecx, [esp + 0x18]
call fcn.004561b0
test al, al
je 0x456bd8
push dword [esp + 0xac]
lea edx, [esp + 0xac]
lea ecx, [esp + 0x1c]
call fcn.0045a2f0
movzx edi, ax
test di, di
je 0x456bd8
mov eax, 0xfffe
cmp di, ax
jne 0x456b74
mov eax, 4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x54
ret 0x48
mov eax, 0xffff
cmp di, ax
jne 0x456b8d
mov eax, 2
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x54
ret 0x48
mov edx, edi
lea ecx, [esp + 0x18]
call fcn.00456140
mov ecx, dword [esp + 0x14]
and edi, 0x7fff
movzx esi, al
mov eax, dword [esp + 0xa8]
cdq
xor eax, edx
sub eax, edx
mov edx, dword [esp + 0xa8]
add eax, eax
or esi, eax
shl esi, 0xf
or esi, edi
shl esi, 4
call fcn.004567d0
and eax, 0xf
or eax, esi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x54
ret 0x48
pop edi
pop esi
pop ebp
or eax, 0xffffffff
pop ebx
add esp, 0x54
ret 0x48