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

Disassembly:
sub esp, 0x2c
push ebx
mov ebx, ecx
push ebp
push esi
mov ebp, dword [ebx + 0x84]
mov ecx, dword [ebx + 0x78]
mov eax, dword [ebx + 0xb0d0]
sub ecx, ebp
mov dword [esp + 0x1c], ebp
mov dword [esp + 0x28], ecx
cmp ecx, eax
jb 0x41a080
add ecx, eax
mov dword [esp + 0x28], ecx
mov esi, dword [ebx + 0x54]
xor eax, eax
mov dword [esp + 0x24], eax
mov byte [esp + 0xe], al
mov dword [esp + 0x18], eax
mov eax, esi
push edi
mov dword [esp + 0x18], ecx
mov ecx, dword [ebx + 0x50]
sub eax, ecx
push 0xc
pop edi
cdq
idiv edi
mov dword [esp + 0x38], edi
test eax, eax
je 0x41a2dc
xor eax, eax
mov dword [esp + 0x24], eax
add ecx, eax
mov dword [esp + 0x30], ecx
cmp byte [ecx], 0xa
je 0x41a262
cmp byte [ecx + 2], 0
mov edi, dword [ecx + 4]
je 0x41a0f2
sub edi, dword [ebx + 0x84]
mov eax, dword [ebx + 0xb0d0]
cmp edi, eax
jb 0x41a0df
add edi, eax
cmp edi, dword [esp + 0x2c]
ja 0x41a262
mov byte [ecx + 2], 0
jmp 0x41a262
mov esi, dword [ebx + 0xb0d0]
mov edx, edi
mov ecx, dword [ecx + 8]
sub edx, ebp
mov dword [esp + 0x14], ecx
cmp edx, esi
jb 0x41a109
add edx, esi
mov eax, dword [esp + 0x18]
cmp edx, eax
jae 0x41a262
cmp ebp, edi
je 0x41a145
push edi
push ebp
mov ecx, ebx
call fcn.00419f9e
mov eax, dword [ebx + 0x78]
mov ebp, edi
mov esi, dword [ebx + 0xb0d0]
sub eax, edi
mov dword [esp + 0x20], ebp
mov dword [esp + 0x18], eax
cmp eax, esi
jb 0x41a141
add eax, esi
mov dword [esp + 0x18], eax
mov ecx, dword [esp + 0x14]
cmp ecx, eax
ja 0x41a28c
test ecx, ecx
je 0x41a262
lea ebp, [ecx + edi]
cmp ebp, esi
jb 0x41a15e
sub ebp, esi
lea eax, [esp + 0x13]
mov dword [esp + 0x20], ebp
push eax
push ecx
lea ecx, [ebx + 0x38]
call fcn.0040387e
mov ecx, dword [ebx + 0x38]
mov dword [esp + 0x34], ecx
cmp edi, ebp
jb 0x41a1dc
test ebp, ebp
je 0x41a1dc
mov eax, dword [ebx + 0xb0d0]
sub eax, edi
cmp byte [ebx + 0x2e4c], 0
push eax
lea esi, [eax + ecx]
mov dword [esp + 0x1c], esi
je 0x41a1b7
push edi
lea esi, [ebx + 0x2d48]
push ecx
mov ecx, esi
call fcn.00418ba9
push ebp
push 0
push dword [esp + 0x20]
mov ecx, esi
call fcn.00418ba9
jmp 0x41a1d6
mov eax, dword [ebx + 0x2d44]
add eax, edi
push eax
push ecx
call fcn.004268c0
push ebp
push dword [ebx + 0x2d44]
push esi
call fcn.004268c0
add esp, 0x18
mov esi, dword [esp + 0x14]
jmp 0x41a20b
cmp byte [ebx + 0x2e4c], 0
mov esi, dword [esp + 0x14]
push esi
je 0x41a1f9
push edi
push ecx
lea ecx, [ebx + 0x2d48]
call fcn.00418ba9
jmp 0x41a20b
mov eax, dword [ebx + 0x2d44]
add eax, edi
push eax
push ecx
call fcn.004268c0
add esp, 0xc
push dword [esp + 0x30]
mov ecx, ebx
push esi
push dword [esp + 0x3c]
call fcn.00418a5d
mov edx, dword [esp + 0x24]
mov ecx, eax
mov eax, dword [ebx + 0x50]
mov byte [edx + eax], 0xa
test ecx, ecx
je 0x41a235
push esi
push ecx
mov ecx, dword [ebx]
call fcn.004122c4
add dword [ebx + 0x2e60], esi
mov edi, dword [ebx + 0x78]
adc dword [ebx + 0x2e64], 0
sub edi, ebp
mov eax, dword [ebx + 0xb0d0]
mov byte [ebx + 0x2e5a], 1
mov dword [esp + 0x18], edi
cmp edi, eax
jb 0x41a262
add edi, eax
mov dword [esp + 0x18], edi
mov esi, dword [ebx + 0x54]
mov ecx, dword [ebx + 0x50]
push 0xc
pop eax
add dword [esp + 0x24], eax
mov eax, esi
sub eax, ecx
inc dword [esp + 0x1c]
push 0xc
cdq
pop edi
idiv edi
cmp dword [esp + 0x1c], eax
jae 0x41a2dc
mov eax, dword [esp + 0x24]
jmp 0x41a0b5
mov dword [ebx + 0x84], ebp
mov esi, dword [ebx + 0x54]
mov eax, esi
mov ecx, dword [ebx + 0x50]
sub eax, ecx
push 0xc
cdq
pop edi
idiv edi
cmp dword [esp + 0x1c], eax
jae 0x41a2d7
mov ebp, dword [esp + 0x1c]
imul edi, ebp, 0xc
cmp byte [ecx + edi], 0xa
je 0x41a2ba
mov byte [ecx + edi + 2], 0
mov esi, dword [ebx + 0x54]
inc ebp
mov ecx, dword [ebx + 0x50]
push 0xc
pop eax
add edi, eax
mov eax, esi
sub eax, ecx
cdq
idiv dword [esp + 0x38]
cmp ebp, eax
jb 0x41a2af
mov ebp, dword [esp + 0x20]
mov byte [esp + 0x12], 1
sub esi, ecx
xor edi, edi
mov eax, esi
mov dword [esp + 0x2c], edi
push 0xc
cdq
pop esi
idiv esi
test eax, eax
je 0x41a34d
xor edx, edx
mov ebp, edx
test edx, edx
je 0x41a309
sub edi, edx
lea esi, [ecx + ebp]
imul edi, edi, 0xc
add edi, ecx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov edi, dword [esp + 0x2c]
mov ecx, dword [ebx + 0x50]
cmp byte [ecx + ebp], 0xa
jne 0x41a317
inc edx
mov dword [esp + 0x28], edx
mov eax, dword [ebx + 0x54]
inc edi
sub eax, ecx
mov dword [esp + 0x2c], edi
push 0xc
pop esi
cdq
add ebp, esi
idiv esi
mov edx, dword [esp + 0x28]
mov esi, eax
cmp edi, esi
jb 0x41a2f4
mov ebp, dword [esp + 0x20]
mov eax, edx
test eax, eax
je 0x41a34d
lea ecx, [esp + 0x13]
sub esi, eax
push ecx
push esi
lea ecx, [ebx + 0x50]
call fcn.0041853e
cmp byte [esp + 0x12], 0
pop edi
jne 0x41a369
push dword [ebx + 0x78]
mov ecx, ebx
push ebp
call fcn.00419f9e
mov eax, dword [ebx + 0x78]
mov dword [ebx + 0x84], eax
mov ecx, dword [ebx + 0xb0d0]
mov eax, 0x400000
cmp ecx, eax
jae 0x41a37a
mov eax, ecx
mov esi, dword [ebx + 0x78]
add eax, esi
cmp eax, ecx
jb 0x41a385
sub eax, ecx
mov dword [ebx + 0x2d40], eax
cmp eax, esi
je 0x41a3ad
mov edx, dword [ebx + 0x84]
cmp edx, esi
je 0x41a3b9
sub edx, esi
cmp edx, ecx
jb 0x41a3a1
add edx, ecx
sub eax, esi
cmp eax, ecx
jb 0x41a3a9
add eax, ecx
cmp edx, eax
jae 0x41a3b9
mov eax, dword [ebx + 0x84]
mov dword [ebx + 0x2d40], eax
pop esi
pop ebp
pop ebx
add esp, 0x2c
ret