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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x4c
push ebx
push esi
push edi
mov edi, dword [ebp + 8]
xor ebx, ebx
mov esi, dword [edi]
mov eax, dword [edi + 0x28]
mov edx, dword [edi + 0x24]
mov dword [ebp - 0x24], eax
test esi, esi
jle 0x49cff9
mov ecx, dword [edi + 4]
mov eax, dword [ecx]
test byte [eax + 0x88], 1
je 0x49cf9f
sub edx, 6
inc ebx
add ecx, 4
sub esi, 1
jne 0x49cf90
mov dword [ebp - 8], ebx
lea eax, [edi + 0x4c]
lea ebx, [edx + 6]
mov dword [edi + 0x3c], esi
lea edx, [edi + 0x3c]
mov dword [ebp - 4], ebx
mov dword [eax], esi
xor ecx, ecx
mov esi, dword [edi]
mov dword [ebp - 0xc], ebx
mov ebx, dword [edi + 4]
mov dword [ebp - 0x14], edx
mov dword [ebp - 0x10], eax
nop dword [eax + eax]
mov eax, dword [ebx + ecx*4]
test byte [eax + 0x88], 1
je 0x49cfec
mov edx, dword [eax + 0x50]
test edx, edx
je 0x49cfec
add dword [edi + 0x3c], edx
mov eax, dword [eax + 0x68]
add dword [edi + 0x4c], eax
inc ecx
cmp ecx, esi
jl 0x49cfd0
mov ebx, dword [ebp - 0xc]
mov ecx, dword [ebp - 4]
jmp 0x49d024
lea ecx, [edx + 6]
mov dword [edi + 0x3c], 0
lea edx, [edi + 0x3c]
mov dword [ebp - 4], ecx
lea eax, [edi + 0x4c]
mov dword [ebp - 0x14], edx
mov ebx, ecx
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], ebx
mov dword [eax], 0
mov dword [ebp - 8], 0
mov edx, dword [ebp + 0xc]
xorps xmm7, xmm7
test edx, edx
je 0x49d25e
xor eax, eax
xor ecx, ecx
mov dword [ebp - 0x18], eax
test esi, esi
jle 0x49d08f
mov edx, dword [edi + 4]
mov edi, edx
mov edx, dword [ebp - 0x10]
mov dword [ebp - 0x10], edx
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0x14], edx
mov edx, dword [ebp - 4]
mov dword [ebp - 4], edx
mov edx, dword [ebp - 8]
mov dword [ebp - 8], edx
mov edx, dword [edi + ecx*4]
test byte [edx + 0x88], 1
je 0x49d069
add eax, dword [edx + 0x18]
inc ecx
cmp ecx, esi
jl 0x49d042
mov edx, dword [ebp - 8]
mov edi, dword [ebp + 8]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 4]
mov dword [ebp - 4], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 8], edx
mov dword [ebp - 0xc], ebx
mov dword [ebp - 0x10], eax
xor eax, eax
mov ecx, 1
mov dword [ebp - 0x20], eax
nop dword [eax]
test ecx, ecx
je 0x49d1cf
xor edx, edx
mov ecx, ebx
xor esi, esi
mov dword [ebp + 8], edx
mov dword [ebp - 0x1c], ecx
mov dword [edi + 0x2c], edx
cmp dword [edi], edx
jle 0x49d1c2
nop
mov eax, dword [edi + 4]
mov ecx, dword [eax + esi*4]
mov eax, dword [ecx + 0x88]
mov dword [ebp - 0x44], eax
test al, 1
je 0x49d1b3
mov eax, dword [ebp - 0x24]
mov dword [ecx + 0x2c], eax
mov eax, dword [ecx + 0x40]
test eax, eax
je 0x49d10c
cmp dword [ebp + 0xc], 5
jne 0x49d10c
cmp dword [ebp - 0x20], 0
movd xmm1, eax
cvtdq2pd xmm1, xmm1
jne 0x49d16e
sub dword [ebp - 0x18], eax
sub ebx, eax
mov dword [ecx + 0x20], edx
cvttsd2si edx, xmm1
mov dword [ebp - 0xc], ebx
mov dword [ecx + 0x28], edx
jmp 0x49d17e
mov ebx, dword [edi]
lea eax, [ebx - 1]
cmp esi, eax
jne 0x49d122
cmp dword [ebp + 0xc], 1
je 0x49d128
movd xmm1, dword [ebp - 0x1c]
jmp 0x49d167
cmp dword [ebp + 0xc], 1
jne 0x49d12d
movaps xmm1, xmm7
jmp 0x49d16b
mov eax, dword [ebp - 0x18]
test eax, eax
je 0x49d15a
mov ebx, dword [ebp - 0xc]
movd xmm1, dword [ecx + 0x18]
cvtdq2pd xmm1, xmm1
movd xmm0, ebx
cvtdq2pd xmm0, xmm0
mulsd xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
divsd xmm1, xmm0
jmp 0x49d16e
mov eax, dword [ebp - 0xc]
cdq
idiv ebx
mov edx, dword [ebp + 8]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
mov ebx, dword [ebp - 0xc]
cmp dword [ebp - 0x20], 0
mov dword [ecx + 0x20], edx
cvttsd2si edx, xmm1
mov dword [ecx + 0x28], edx
jne 0x49d184
test byte [ebp - 0x44], 4
je 0x49d190
mov edx, dword [ecx + 0x28]
mov eax, dword [ecx + 0x2c]
mov dword [ecx + 0x18], edx
mov dword [ecx + 0x1c], eax
cmp dword [ecx + 0x50], 0
je 0x49d19c
add dword [edi + 0x2c], edx
mov edx, dword [ecx + 0x28]
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x1c]
add eax, 6
sub ecx, edx
add eax, edx
mov dword [ebp - 0x1c], ecx
mov edx, eax
mov dword [ebp + 8], eax
jmp 0x49d1b6
mov ecx, dword [ebp - 0x1c]
inc esi
cmp esi, dword [edi]
jl 0x49d0c0
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp eax, 2
jl 0x49d0a0
mov edx, dword [ebp + 0xc]
cmp edx, 1
jne 0x49d23e
mov eax, dword [ebp - 4]
mov ecx, dword [edi]
mov dword [edi + 0x1c], 0
mov dword [ebp + 8], eax
mov ebx, dword [ebp - 0x10]
xor edx, edx
mov dword [edi + 0x44], 0
mov dword [ebx], 0
lea esi, [edx + 1]
test ecx, ecx
jle 0x49d2aa
mov eax, dword [edi + 4]
mov ecx, dword [eax + edx*4]
test byte [ecx + 0x88], 1
je 0x49d233
mov eax, dword [ecx + 0x68]
cmp eax, 1
mov dword [ecx + 0x60], 0
cmovl eax, esi
cmp dword [ecx + 0x50], 0
mov dword [ecx + 0x68], eax
je 0x49d230
add dword [ebx], eax
mov eax, dword [ecx + 0x68]
add dword [edi + 0x44], eax
mov ecx, dword [edi]
inc edx
cmp edx, ecx
jl 0x49d203
mov eax, ecx
jmp 0x49d2ac
mov eax, dword [edi + 0x2c]
sub dword [edi + 0x1c], eax
mov eax, dword [ebp - 4]
mov dword [ebp + 8], eax
cmp edx, 2
je 0x49d91f
cmp edx, 5
je 0x49d91f
jmp 0x49d261
mov dword [ebp + 8], ecx
mov ecx, dword [edi]
cmp edx, 3
jne 0x49d1e6
xor ebx, ebx
xor esi, esi
test ecx, ecx
jle 0x49d91f
nop dword [eax + eax]
mov eax, dword [edi + 4]
mov edx, dword [eax + esi*4]
test byte [edx + 0x88], 1
je 0x49d2a0
mov eax, dword [edx + 0x18]
add eax, dword [edx + 0x78]
mov dword [edx + 0x20], ebx
add ebx, 6
mov dword [edx + 0x28], eax
add ebx, eax
inc esi
cmp esi, dword [edi]
jl 0x49d280
jmp 0x49d91f
mov eax, dword [edi]
mov edx, dword [ebp - 0x14]
mov ebx, dword [ebx]
mov dword [ebp - 0x18], ebx
mov ebx, dword [edi + 0x1c]
mov edx, dword [edx]
mov dword [ebp - 0x1c], edx
mov dword [ebp - 0xc], ebx
test edx, edx
jne 0x49d549
xor esi, esi
mov dword [edi + 0x44], edx
test ecx, ecx
jle 0x49d314
mov eax, dword [edi + 4]
mov edx, dword [eax + esi*4]
test byte [edx + 0x88], 1
je 0x49d307
cmp dword [edx + 0x40], 0
jne 0x49d2fe
mov eax, dword [edx + 0x18]
mov ecx, 1
add eax, dword [edx + 0x78]
cmp eax, 1
cmovl eax, ecx
mov dword [edx + 0x68], eax
add dword [edi + 0x44], eax
jmp 0x49d30a
mov dword [edx + 0x68], 0
jmp 0x49d30a
add ebx, 6
mov eax, dword [edi]
inc esi
cmp esi, eax
jl 0x49d2d0
mov dword [ebp - 0xc], ebx
mov esi, dword [edi + 0x44]
mov ecx, eax
mov edx, 1
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x34], 0
nop
test edx, edx
je 0x49d8da
mov eax, dword [ebp + 8]
mov edx, dword [ebp - 4]
sub eax, ebx
xor ebx, ebx
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x28], 0
mov eax, ecx
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x14], ebx
test ecx, ecx
jle 0x49d52c
nop word [eax + eax]
mov eax, dword [edi + 4]
mov esi, dword [eax + ebx*4]
test byte [esi + 0x88], 1
je 0x49d517
cmp dword [esi + 0x60], 0
jne 0x49d4da
mov eax, dword [ebp - 0x24]
xor edx, edx
mov ecx, dword [esi + 0x78]
mov dword [esi + 0x2c], eax
mov eax, dword [esi + 0x18]
add eax, ecx
cmovns edx, eax
test ecx, ecx
je 0x49d3ab
cmp dword [ebp + 8], edx
cmovl edx, dword [ebp + 8]
mov ecx, dword [esi + 0x68]
mov ebx, dword [ebp - 0x30]
test ecx, ecx
je 0x49d3d8
movd xmm1, ecx
movd xmm0, ebx
cvtdq2pd xmm0, xmm0
cvtdq2pd xmm1, xmm1
mulsd xmm1, xmm0
movd xmm0, dword [ebp - 0x2c]
cvtdq2pd xmm0, xmm0
divsd xmm1, xmm0
jmp 0x49d3db
movaps xmm1, xmm7
cvttsd2si eax, xmm1
movd xmm4, edx
cvtdq2pd xmm4, xmm4
movd xmm2, eax
cvtdq2pd xmm2, xmm2
movaps xmm0, xmm4
addsd xmm0, xmm2
comisd xmm7, xmm0
jbe 0x49d408
mov eax, edx
neg eax
movd xmm2, eax
cvtdq2pd xmm2, xmm2
movd xmm3, dword [ebp - 0x10]
cvtdq2pd xmm3, xmm3
test ecx, ecx
je 0x49d430
movd xmm0, dword [ebp - 0x2c]
movd xmm1, ecx
cvtdq2pd xmm1, xmm1
cvtdq2pd xmm0, xmm0
mulsd xmm1, xmm3
divsd xmm1, xmm0
jmp 0x49d433
movaps xmm1, xmm7
mov eax, dword [esi + 0x58]
addsd xmm1, xmm2
test eax, eax
je 0x49d4cc
movd xmm2, eax
movaps xmm0, xmm4
cvtdq2pd xmm2, xmm2
addsd xmm0, xmm1
comisd xmm0, xmm2
jb 0x49d4b6
movd xmm0, ebx
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm3
comisd xmm0, xmm7
jb 0x49d46e
movaps xmm3, xmm7
jmp 0x49d471
movaps xmm3, xmm1
subsd xmm2, xmm4
comisd xmm3, xmm2
jbe 0x49d48b
comisd xmm0, xmm7
jb 0x49d486
movaps xmm3, xmm7
jmp 0x49d48e
movaps xmm3, xmm1
jmp 0x49d48e
movaps xmm3, xmm2
comisd xmm3, xmm1
ja 0x49d4b6
comisd xmm0, xmm7
jb 0x49d49f
movaps xmm3, xmm7
jmp 0x49d4a2
movaps xmm3, xmm1
comisd xmm3, xmm2
jbe 0x49d4b3
comisd xmm0, xmm7
jb 0x49d4b6
movaps xmm1, xmm7
jmp 0x49d4b6
movaps xmm1, xmm2
sub dword [ebp - 0x18], ecx
cvttsd2si eax, xmm1
mov dword [esi + 0x60], 1
add eax, edx
sub dword [ebp + 8], eax
sub dword [ebp - 0xc], edx
cvttsd2si ecx, xmm1
add ecx, edx
mov edx, dword [ebp - 0x20]
mov dword [esi + 0x28], ecx
jmp 0x49d4dd
mov ecx, dword [esi + 0x28]
mov eax, dword [ebp - 8]
mov ebx, ecx
dec eax
cmp dword [ebp - 0x1c], eax
jne 0x49d4fe
mov eax, edx
sub eax, ecx
cdq
xor eax, edx
sub eax, edx
mov edx, dword [ebp - 0x20]
cmp eax, dword [ebp - 8]
jg 0x49d4fe
mov dword [esi + 0x28], edx
mov ebx, edx
mov eax, dword [ebp - 0x28]
sub edx, ebx
mov dword [esi + 0x20], eax
add eax, 6
add eax, ebx
mov dword [ebp - 0x20], edx
inc dword [ebp - 0x1c]
mov ebx, dword [ebp - 0x14]
mov dword [ebp - 0x28], eax
mov eax, dword [edi]
inc ebx
mov dword [ebp - 0x14], ebx
mov ecx, eax
cmp ebx, eax
jl 0x49d370
mov esi, dword [ebp - 0x18]
jmp 0x49d52e
mov ecx, dword [edi]
mov ebx, dword [ebp - 0x34]
inc ebx
mov dword [ebp - 0x10], edx
mov dword [ebp - 0x34], ebx
cmp ebx, 0xa
mov ebx, dword [ebp - 0xc]
jl 0x49d330
jmp 0x49d8da
mov ebx, dword [edi + 0x2c]
xor edx, edx
mov eax, dword [edi + 0x44]
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x10], ebx
mov dword [ebp - 0x20], eax
test ecx, ecx
jle 0x49d598
mov ebx, dword [ebp - 0xc]
nop word [eax + eax]
mov eax, dword [edi + 4]
mov eax, dword [eax + edx*4]
test byte [eax + 0x88], 1
je 0x49d588
mov dword [eax + 0x60], 0
jmp 0x49d58b
add ebx, 6
mov ecx, dword [edi]
inc edx
cmp edx, ecx
jl 0x49d570
mov dword [ebp - 0xc], ebx
mov ebx, dword [ebp - 0x10]
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x44], 0
test esi, esi
jne 0x49d5b5
mov eax, ecx
cmp dword [ebp - 0x30], esi
je 0x49d8da
mov eax, dword [ebp + 8]
mov esi, eax
mov edx, dword [ebp - 0x1c]
sub esi, ebx
mov ebx, edx
mov dword [ebp - 0x34], 0
sub ebx, dword [ebp - 0x10]
sub esi, dword [ebp - 0xc]
js 0x49d668
xor eax, eax
test ebx, ebx
cmovns eax, ebx
cmp esi, eax
jge 0x49d5e3
mov ecx, esi
jmp 0x49d5ec
xor edx, edx
mov ecx, ebx
test ebx, ebx
cmovs ecx, edx
movd xmm6, dword [ebp - 0x18]
movd xmm2, dword [ebp - 0x20]
movd xmm0, esi
cvtdq2pd xmm0, xmm0
cvtdq2pd xmm6, xmm6
cvtdq2pd xmm2, xmm2
mulsd xmm0, xmm6
movsd qword [ebp - 0x4c], xmm2
divsd xmm0, xmm2
cvttsd2si edx, xmm0
cmp ecx, edx
jle 0x49d62c
cmp esi, eax
jge 0x49d623
mov ebx, esi
jmp 0x49d62e
xor eax, eax
test ebx, ebx
cmovs ebx, eax
jmp 0x49d62e
mov ebx, edx
movd xmm0, dword [ebp + 8]
cvtdq2pd xmm0, xmm0
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x10]
mulsd xmm0, xmm6
divsd xmm0, xmm2
cvttsd2si eax, xmm0
cmp ecx, eax
cmovle ecx, eax
lea eax, [ebx + edx]
cmp eax, ecx
jle 0x49d661
mov ebx, ecx
mov eax, 0
sub ebx, edx
cmovs ebx, eax
sub esi, ebx
mov dword [ebp - 0x28], esi
jmp 0x49d6d5
movd xmm6, dword [ebp - 0x18]
mov ecx, edx
movd xmm2, dword [ebp - 0x20]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
cvtdq2pd xmm6, xmm6
cvtdq2pd xmm2, xmm2
mulsd xmm0, xmm6
movsd qword [ebp - 0x4c], xmm2
divsd xmm0, xmm2
cvttsd2si eax, xmm0
cmp edx, eax
cmovle ecx, eax
test ebx, ebx
jle 0x49d6a2
xor ebx, ebx
jmp 0x49d6c5
cmp ebx, ecx
jge 0x49d6aa
xor ebx, ebx
jmp 0x49d6c5
movd xmm0, esi
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm6
divsd xmm0, xmm2
cvttsd2si eax, xmm0
cmp ebx, eax
cmovg eax, ebx
mov ebx, eax
sub esi, ebx
mov dword [ebp - 0x28], esi
test esi, esi
jle 0x49d6d5
mov dword [ebp - 0x28], 0
mov esi, dword [ebp - 4]
cmp esi, ecx
mov eax, dword [edi]
cmovl ecx, esi
mov dword [ebp - 0x14], esi
xor edx, edx
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x38], edx
test eax, eax
jle 0x49d8b6
nop dword [eax]
mov eax, dword [edi + 4]
mov esi, dword [eax + edx*4]
test byte [esi + 0x88], 1
je 0x49d8a0
cmp dword [esi + 0x60], 0
jne 0x49d850
mov eax, dword [ebp - 0x24]
xor edx, edx
mov ecx, dword [esi + 0x78]
mov dword [esi + 0x2c], eax
mov eax, dword [esi + 0x18]
add eax, ecx
cmovns edx, eax
test ecx, ecx
je 0x49d73b
cmp dword [ebp + 8], edx
cmovl edx, dword [ebp + 8]
mov ecx, dword [esi + 0x50]
movd xmm3, dword [esi + 0x68]
cvtdq2pd xmm3, xmm3
test ecx, ecx
je 0x49d75d
movd xmm1, ebx
cvtdq2pd xmm1, xmm1
mulsd xmm1, xmm3
divsd xmm1, xmm6
jmp 0x49d775
movd xmm1, dword [ebp - 0x28]
movaps xmm0, xmm2
cvtdq2pd xmm1, xmm1
subsd xmm0, xmm6
mulsd xmm1, xmm3
divsd xmm1, xmm0
cvttsd2si eax, xmm1
movd xmm4, edx
cvtdq2pd xmm4, xmm4
movd xmm5, eax
cvtdq2pd xmm5, xmm5
movaps xmm0, xmm4
addsd xmm0, xmm5
comisd xmm7, xmm0
jbe 0x49d7a2
mov eax, edx
neg eax
movd xmm5, eax
cvtdq2pd xmm5, xmm5
movd xmm2, dword [ebp - 0x40]
cvtdq2pd xmm2, xmm2
test ecx, ecx
je 0x49d7b9
mulsd xmm2, xmm3
divsd xmm2, xmm6
jmp 0x49d7da
movd xmm1, dword [ebp - 0x3c]
movsd xmm0, qword [ebp - 0x4c]
cvtdq2pd xmm1, xmm1
subsd xmm0, xmm6
subsd xmm1, xmm2
mulsd xmm1, xmm3
divsd xmm1, xmm0
movaps xmm2, xmm1
mov ecx, dword [esi + 0x58]
addsd xmm2, xmm5
movaps xmm1, xmm2
test ecx, ecx
je 0x49d845
movd xmm0, ecx
addsd xmm4, xmm2
cvtdq2pd xmm0, xmm0
comisd xmm4, xmm0
jbe 0x49d845
sub ecx, edx
mov eax, 0
cmovns eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
comisd xmm0, xmm2
ja 0x49d815
movaps xmm1, xmm0
cvttsd2si eax, xmm1
add eax, edx
sub dword [ebp + 8], eax
mov eax, dword [esi + 0x68]
sub dword [ebp - 0x20], eax
cmp dword [esi + 0x50], 0
je 0x49d83b
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [esi + 0x18]
sub dword [ebp - 0x18], eax
sub dword [ebp - 0x10], edx
mov dword [ebp - 0x1c], ecx
jmp 0x49d83e
sub dword [ebp - 0xc], edx
mov dword [esi + 0x60], 1
cvttsd2si eax, xmm1
add edx, eax
mov dword [esi + 0x28], edx
jmp 0x49d853
mov edx, dword [esi + 0x28]
mov eax, dword [ebp - 8]
mov ecx, edx
dec eax
cmp dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x14]
jne 0x49d875
sub eax, edx
cdq
xor eax, edx
sub eax, edx
cmp eax, dword [ebp - 8]
mov eax, dword [ebp - 0x14]
jg 0x49d875
mov dword [esi + 0x28], eax
mov ecx, eax
mov edx, dword [ebp - 0x34]
sub eax, ecx
inc dword [ebp - 0x2c]
mov dword [esi + 0x20], edx
add edx, 6
mov dword [ebp - 0x14], eax
add edx, ecx
mov eax, dword [ebp - 0x30]
sub eax, ecx
mov dword [ebp - 0x34], edx
cmp dword [esi + 0x50], 0
mov edx, dword [ebp - 0x38]
cmove eax, dword [ebp - 0x30]
mov ecx, eax
mov dword [ebp - 0x30], ecx
mov eax, dword [edi]
inc edx
movsd xmm2, qword [ebp - 0x4c]
mov dword [ebp - 0x38], edx
cmp edx, eax
jl 0x49d700
mov esi, dword [ebp - 0x14]
xor ebx, ebx
mov dword [ebp - 0x3c], esi
test ecx, ecx
mov edx, ecx
mov ecx, eax
cmovs edx, ebx
mov ebx, dword [ebp - 0x10]
mov dword [ebp - 0x40], edx
mov edx, dword [ebp - 0x44]
inc edx
mov dword [ebp - 0x44], edx
cmp edx, 0xa
jl 0x49d5a6
xor esi, esi
xor edx, edx
test eax, eax
jle 0x49d91f
mov eax, dword [edi + 4]
mov ecx, dword [eax + edx*4]
test byte [ecx + 0x88], 1
je 0x49d91a
mov eax, dword [ecx + 0x28]
test eax, eax
jns 0x49d901
mov dword [ecx + 0x28], 0
xor eax, eax
mov ebx, dword [ebp - 4]
cmp ebx, eax
jge 0x49d90d
mov dword [ecx + 0x28], ebx
mov eax, ebx
mov dword [ecx + 0x20], esi
sub ebx, eax
add esi, 6
mov dword [ebp - 4], ebx
add esi, eax
inc edx
cmp edx, dword [edi]
jl 0x49d8e2
mov eax, dword [edi]
lea eax, [eax*2 - 1]
push eax
call dword [sym.imp.USER32.dll_BeginDeferWindowPos]
mov ebx, dword [edi]
mov edx, eax
sub ebx, 1
js 0x49d9cf
nop dword [eax]
mov eax, dword [edi + 4]
mov esi, dword [eax + ebx*4]
test byte [esi + 0x88], 1
je 0x49d9c6
push 4
push dword [esi + 0x2c]
push dword [esi + 0x28]
push dword [esi + 0x24]
push dword [esi + 0x20]
push 0
push dword [esi]
push edx
call dword [sym.imp.USER32.dll_DeferWindowPos]
cmp dword [esi + 0xa0], 0
mov edx, eax
je 0x49d9b7
mov dword [esi + 0x90], 0
mov ecx, dword [esi + 0x2c]
mov dword [esi + 0x98], ecx
mov eax, dword [edi + 4]
push 4
push ecx
push 6
mov eax, dword [eax + ebx*4]
push 0
mov eax, dword [eax + 0x20]
mov dword [esi + 0x94], eax
add eax, 0xfffffffa
push eax
push 0
push dword [esi + 0xa0]
mov dword [esi + 0x8c], eax
push edx
call dword [sym.imp.USER32.dll_DeferWindowPos]
mov edx, eax
cmp dword [ebp + 0xc], 1
jne 0x49d9c6
mov eax, dword [esi + 0x28]
mov dword [esi + 0x80], eax
sub ebx, 1
jns 0x49d940
push edx
call dword [sym.imp.USER32.dll_EndDeferWindowPos]
mov eax, dword [edi]
xor esi, esi
mov ebx, dword [sym.imp.USER32.dll_UpdateWindow]
test eax, eax
jle 0x49da13
nop dword [eax]
nop dword [eax + eax]
mov eax, dword [edi + 4]
mov eax, dword [eax + esi*4]
test byte [eax + 0x88], 1
je 0x49da0c
mov eax, dword [eax + 0xa0]
test eax, eax
je 0x49da0c
push eax
call ebx
mov eax, dword [edi]
inc esi
cmp esi, eax
jl 0x49d9f0
xor esi, esi
test eax, eax
jle 0x49da38
nop dword [eax]
mov eax, dword [edi + 4]
mov eax, dword [eax + esi*4]
test byte [eax + 0x88], 1
je 0x49da33
push dword [eax]
call ebx
inc esi
cmp esi, dword [edi]
jl 0x49da20
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret