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

Disassembly:
sub esp, 0x38
push ebx
xor edx, edx
push ebp
mov eax, 4
mov ecx, 2
push edi
mov ebx, 1
mov edi, 8
mov dword [esp + 0x28], edx
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], edx
mov dword [esp + 0x34], ecx
mov dword [esp + 0x38], edx
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x40], edx
mov dword [esp + 0xc], edi
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], ecx
mov dword [esp + 0x24], ebx
mov dword [esi + 0x28], edx
cmp byte [esi + 0xd3], dl
je 0x41f957
test byte [esi + 0x20], cl
jne 0x41f905
mov eax, dword [esi + 0x7c]
add eax, 7
shr eax, 3
mov dword [esi + 0x80], eax
jmp 0x41f90e
mov ecx, dword [esi + 0x7c]
mov dword [esi + 0x80], ecx
movzx eax, byte [esi + 0xd4]
mov ebp, dword [esi + 0x78]
add eax, eax
add eax, eax
mov ecx, dword [esp + eax + 0xc]
mov edx, ebp
sub edx, dword [esp + eax + 0x28]
lea eax, [edx + ecx - 1]
xor edx, edx
div ecx
mov cl, byte [esi + 0xd9]
cmp cl, 8
movzx ecx, cl
mov dword [esi + 0x90], eax
jb 0x41f94b
shr ecx, 3
imul ecx, eax
inc ecx
jmp 0x41f971
imul ecx, eax
add ecx, 7
shr ecx, 3
inc ecx
jmp 0x41f971
mov eax, dword [esi + 0x7c]
mov ebp, dword [esi + 0x78]
mov ecx, dword [esi + 0x88]
mov dword [esi + 0x80], eax
mov dword [esi + 0x90], ebp
add ecx, ebx
mov ebx, dword [esi + 0x20]
movzx eax, byte [esi + 0xd9]
mov dword [esi + 0x8c], ecx
test bl, 4
je 0x41f991
cmp byte [esi + 0xd7], 8
jae 0x41f991
mov eax, edi
mov edi, ebx
and edi, 0x1000
je 0x41f9fb
mov cl, byte [esi + 0xd6]
cmp cl, 3
jne 0x41f9bb
xor eax, eax
cmp word [esi + 0xca], ax
setne al
lea eax, [eax*8 + 0x18]
jmp 0x41f9fb
test cl, cl
jne 0x41f9d7
cmp eax, 8
jge 0x41f9c9
mov eax, 8
cmp word [esi + 0xca], 0
je 0x41f9fb
add eax, eax
jmp 0x41f9fb
cmp cl, 2
jne 0x41f9fb
cmp word [esi + 0xca], 0
je 0x41f9fb
lea ecx, [eax*4]
mov eax, 0x55555556
imul ecx
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, ebx
and edx, 0x8000
je 0x41fa42
mov cl, byte [esi + 0xd6]
cmp cl, 3
jne 0x41fa17
mov eax, 0x20
jmp 0x41fa42
test cl, cl
jne 0x41fa2c
xor ecx, ecx
cmp eax, 8
setg cl
dec ecx
and ecx, 0xfffffff0
add ecx, 0x20
jmp 0x41fa40
cmp cl, 2
jne 0x41fa42
xor ecx, ecx
cmp eax, 0x20
setg cl
dec ecx
and ecx, 0xffffffe0
add ecx, 0x40
mov eax, ecx
test ebx, 0x4000
je 0x41fa9f
cmp word [esi + 0xca], 0
je 0x41fa58
test edi, edi
jne 0x41fa8e
test edx, edx
jne 0x41fa8e
mov cl, byte [esi + 0xd6]
cmp cl, 4
je 0x41fa8e
cmp eax, 8
jg 0x41fa7d
xor eax, eax
cmp cl, 6
sete al
lea eax, [eax*8 + 0x18]
jmp 0x41fa9f
xor eax, eax
cmp cl, 6
setne al
dec eax
and eax, 0x10
add eax, 0x30
jmp 0x41fa9f
xor edx, edx
cmp eax, 0x10
setg dl
dec edx
and edx, 0xffffffe0
add edx, 0x40
mov eax, edx
lea ecx, [ebp + 7]
and ecx, 0xfffffff8
cmp eax, 8
jl 0x41fab4
mov edx, eax
shr edx, 3
imul edx, ecx
jmp 0x41fabf
imul ecx, eax
add ecx, 7
shr ecx, 3
mov edx, ecx
add eax, 7
sar eax, 3
lea eax, [eax + edx + 1]
lea edi, [eax + 0x40]
cmp edi, dword [esi + 0x11c]
jbe 0x41fb4d
mov eax, dword [esi + 0x108]
test eax, eax
je 0x41fae7
push eax
call fcn.00423a3d
add esp, 4
cmp byte [esi + 0xd3], 0
je 0x41fb21
test edi, edi
je 0x41fb17
push edi
call fcn.00424cfe
mov ebp, eax
add esp, 4
test ebp, ebp
je 0x41fb0f
push edi
push 0
push ebp
call fcn.00427e80
add esp, 0xc
mov dword [esi + 0x108], ebp
jmp 0x41fb38
xor ebp, ebp
mov dword [esi + 0x108], ebp
jmp 0x41fb38
test edi, edi
je 0x41fb30
push edi
call fcn.00424cfe
add esp, 4
jmp 0x41fb32
xor eax, eax
mov dword [esi + 0x108], eax
mov eax, dword [esi + 0x108]
add eax, 0x20
mov dword [esi + 0x9c], eax
mov dword [esi + 0x11c], edi
mov eax, dword [esi + 0x88]
pop edi
inc eax
pop ebp
pop ebx
cmp eax, dword [esi + 0x120]
jbe 0x41fb9d
mov eax, dword [esi + 0x98]
test eax, eax
je 0x41fb72
push eax
call fcn.00423a3d
add esp, 4
mov eax, dword [esi + 0x88]
add eax, 1
je 0x41fb88
push eax
call fcn.00424cfe
add esp, 4
jmp 0x41fb8a
xor eax, eax
mov dword [esi + 0x98], eax
mov eax, dword [esi + 0x88]
inc eax
mov dword [esi + 0x120], eax
mov ecx, dword [esi + 0x98]
push eax
push 0
push ecx
call fcn.00427e80
or dword [esi + 0x1c], 0x40
add esp, 0x44
ret