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

Disassembly:
sub esp, 0x38
push ebx
push ebp
xor edx, edx
push esi
mov esi, eax
mov eax, 4
mov ecx, 2
push edi
mov ebx, 1
mov edi, 8
mov dword [esp + 0x2c], edx
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], edx
mov dword [esp + 0x38], ecx
mov dword [esp + 0x3c], edx
mov dword [esp + 0x40], ebx
mov dword [esp + 0x44], edx
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], edi
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], ecx
mov dword [esp + 0x24], ecx
mov dword [esp + 0x28], ebx
mov dword [esi + 0x78], edx
call fcn.00408ab0
cmp byte [esi + 0x123], 0
je 0x411b2a
test byte [esi + 0x70], 2
jne 0x411ad2
mov eax, dword [esi + 0xcc]
add eax, 7
shr eax, 3
mov dword [esi + 0xd0], eax
jmp 0x411ade
mov ecx, dword [esi + 0xcc]
mov dword [esi + 0xd0], ecx
movzx eax, byte [esi + 0x124]
mov ebp, dword [esi + 0xc8]
add eax, eax
add eax, eax
mov ecx, dword [esp + eax + 0x10]
mov edx, ebp
sub edx, dword [esp + eax + 0x2c]
lea eax, [edx + ecx - 1]
xor edx, edx
div ecx
mov cl, byte [esi + 0x129]
cmp cl, 8
movzx ecx, cl
mov dword [esi + 0xe0], eax
jb 0x411b1e
shr ecx, 3
imul ecx, eax
inc ecx
jmp 0x411b4a
imul ecx, eax
add ecx, 7
shr ecx, 3
inc ecx
jmp 0x411b4a
mov eax, dword [esi + 0xcc]
mov ebp, dword [esi + 0xc8]
mov ecx, dword [esi + 0xd8]
mov dword [esi + 0xd0], eax
mov dword [esi + 0xe0], ebp
add ecx, ebx
mov ebx, dword [esi + 0x70]
movzx eax, byte [esi + 0x129]
mov dword [esi + 0xdc], ecx
test bl, 4
je 0x411b6a
cmp byte [esi + 0x127], 8
jae 0x411b6a
mov eax, edi
mov edi, ebx
and edi, 0x1000
je 0x411bd4
mov cl, byte [esi + 0x126]
cmp cl, 3
jne 0x411b94
xor eax, eax
cmp word [esi + 0x11a], ax
setne al
lea eax, [eax*8 + 0x18]
jmp 0x411bd4
test cl, cl
jne 0x411bb0
cmp eax, 8
jge 0x411ba2
mov eax, 8
cmp word [esi + 0x11a], 0
je 0x411bd4
add eax, eax
jmp 0x411bd4
cmp cl, 2
jne 0x411bd4
cmp word [esi + 0x11a], 0
je 0x411bd4
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 0x411c1b
mov cl, byte [esi + 0x126]
cmp cl, 3
jne 0x411bf0
mov eax, 0x20
jmp 0x411c1b
test cl, cl
jne 0x411c05
xor ecx, ecx
cmp eax, 8
setg cl
dec ecx
and ecx, 0xfffffff0
add ecx, 0x20
jmp 0x411c19
cmp cl, 2
jne 0x411c1b
xor ecx, ecx
cmp eax, 0x20
setg cl
dec ecx
and ecx, 0xffffffe0
add ecx, 0x40
mov eax, ecx
test ebx, 0x4000
je 0x411c78
cmp word [esi + 0x11a], 0
je 0x411c31
test edi, edi
jne 0x411c67
test edx, edx
jne 0x411c67
mov cl, byte [esi + 0x126]
cmp cl, 4
je 0x411c67
cmp eax, 8
jg 0x411c56
xor eax, eax
cmp cl, 6
sete al
lea eax, [eax*8 + 0x18]
jmp 0x411c78
xor eax, eax
cmp cl, 6
setne al
dec eax
and eax, 0x10
add eax, 0x30
jmp 0x411c78
xor edx, edx
cmp eax, 0x10
setg dl
dec edx
and edx, 0xffffffe0
add edx, 0x40
mov eax, edx
test ebx, 0x100000
je 0x411c91
movzx ecx, byte [esi + 0x65]
movzx edx, byte [esi + 0x64]
imul ecx, edx
cmp ecx, eax
jle 0x411c91
mov eax, ecx
lea ecx, [ebp + 7]
and ecx, 0xfffffff8
cmp eax, 8
jl 0x411ca6
mov edx, eax
shr edx, 3
imul edx, ecx
jmp 0x411cb1
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 + 0x280]
jbe 0x411d07
mov ecx, dword [esi + 0x250]
test ecx, ecx
je 0x411ceb
mov eax, dword [esi + 0x24c]
push ecx
test eax, eax
je 0x411ce3
push esi
call eax
add esp, 8
jmp 0x411ceb
call fcn.004142df
add esp, 4
mov ecx, edi
call fcn.00411ea0
mov dword [esi + 0x250], eax
add eax, 0x20
mov dword [esi + 0xec], eax
mov dword [esi + 0x280], edi
cmp dword [esi + 0xd8], 0xfffffffe
jbe 0x411d1e
push esi
mov ecx, str.Row_has_too_many_bytes_to_allocate_in_memory.
call fcn.0040d490
add esp, 4
mov eax, dword [esi + 0xd8]
inc eax
cmp eax, dword [esi + 0x284]
jbe 0x411d71
mov ecx, dword [esi + 0xe8]
test ecx, ecx
je 0x411d52
mov eax, dword [esi + 0x24c]
push ecx
test eax, eax
je 0x411d4a
push esi
call eax
add esp, 8
jmp 0x411d52
call fcn.004142df
add esp, 4
mov ecx, dword [esi + 0xd8]
inc ecx
call fcn.00411ea0
mov dword [esi + 0xe8], eax
mov eax, dword [esi + 0xd8]
inc eax
mov dword [esi + 0x284], eax
mov ecx, dword [esi + 0xe8]
push eax
push 0
push ecx
call fcn.00417100
add esp, 0xc
or dword [esi + 0x6c], 0x40
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x38
ret