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

Disassembly:
mov eax, dword [esp + 4]
sub esp, 0x54
cmp dword [0x5531d0], eax
mov eax, dword [esp + 0x5c]
push ebx
push ebp
push esi
push edi
mov ebp, ecx
jne 0x4a796e
cmp dword [0x5531d4], eax
je 0x4a8966
xor esi, esi
cmp dword [0x553270], esi
jne 0x4a7983
cmp eax, esi
je 0x4a7983
xor eax, eax
jmp 0x4a8969
push esi
push 0x550314
push 0x550300
lea ecx, [ebp + 0x24]
mov eax, dword [ecx]
push esi
push 0x52a81c
call dword [eax + 0x14]
push eax
call fcn.004e233c
add esp, 0x14
cmp eax, esi
mov dword [esp + 0x18], eax
je 0x4a79b6
fild dword [ebp + 0x4b9c]
fstp dword [eax + 0x28]
mov eax, dword [ebp + 0x11d0]
push esi
mov edi, ebp
mov dword [eax + 0x168], 1
call fcn.004b39a1
mov esi, 0x52a7b8
push esi
lea ebx, [ebp + 0xa8]
push ebx
call fcn.0042ad97
mov edi, eax
add eax, 0xffffffdc
neg edi
sbb edi, edi
and edi, eax
mov eax, dword [0x5531d0]
cmp eax, dword [esp + 0x68]
mov dword [esp + 0x14], edi
je 0x4a8215
xor esi, esi
cmp dword [esp + 0x68], esi
je 0x4a7a19
mov eax, dword [0x5531a8]
cmp eax, 2
je 0x4a7a19
cmp eax, 3
jne 0x4a797c
push esi
push esi
push 0x46f
push dword [ebp + 4]
call dword [0x508484]
push 0x52f7b4
push ebx
call fcn.0042ad97
lea ecx, [eax - 0x24]
neg eax
sbb eax, eax
push 0x52f628
and eax, ecx
push ebx
mov dword [esp + 0x74], eax
call fcn.0042ad97
lea ecx, [eax - 0x24]
neg eax
sbb eax, eax
and eax, ecx
cmp dword [esp + 0x68], esi
mov dword [esp + 0x2c], eax
je 0x4a7e1d
cmp dword [0x5531d4], esi
je 0x4a7a73
push esi
mov ebx, ebp
call fcn.004a8bd0
lea eax, [esp + 0x30]
push eax
push dword [ebp + 4]
call dword [0x50855c]
lea esi, [esp + 0x30]
mov edi, 0x5531f8
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
xor ebx, ebx
movsd dword es:[edi], dword [esi]
cmp dword [0x553298], ebx
je 0x4a7ab5
cmp dword [0x5531d4], ebx
jne 0x4a7ae2
mov esi, dword [ebp + 0x11d0]
push 5
add esi, 0x3c
pop ecx
mov edi, 0x553280
rep movsd dword es:[edi], dword [esi]
jmp 0x4a7ae2
mov eax, dword [ebp + 0x11d0]
push 5
push dword [eax + 4]
call dword [0x508534]
mov esi, dword [ebp + 0x11d0]
xor eax, eax
call fcn.004ca3f2
mov ecx, dword [esp + 0x18]
cmp ecx, ebx
je 0x4a7ae2
mov eax, dword [ecx]
push 6
call dword [eax + 0x1c]
mov eax, dword [ebp + 0x11d0]
mov ecx, dword [eax + 0x60]
mov dword [ebp + 0x5680], ecx
mov ecx, dword [eax + 0x64]
mov dword [ebp + 0x5684], ecx
push ebx
lea ecx, [esp + 0x34]
push ecx
push eax
call fcn.004ca1a2
mov edi, dword [esp + 0x14]
lea eax, [esp + 0x50]
push eax
push dword [edi + 4]
call dword [0x508538]
mov eax, dword [ebp + 0x11d0]
push dword [eax + 4]
push dword [edi + 4]
call dword [0x5084b4]
fldz
fst dword [edi + 0x40]
fstp dword [edi + 0x44]
fld1
fstp dword [edi + 0x48]
cmp dword [0x553298], ebx
je 0x4a7b45
fild dword [esp + 0x5c]
jmp 0x4a7b4b
fld dword [0x5531f4]
mov esi, dword [0x508534]
fstp dword [edi + 0x4c]
push ebx
push dword [edi + 4]
mov dword [edi + 0x3c], 2
call esi
cmp dword [ebp + 0x1204], ebx
jne 0x4a7b73
mov eax, dword [esp + 0x6c]
push ebx
push dword [eax + 4]
call esi
mov esi, dword [0x50852c]
push 6
push ebx
push ebx
push ebx
push ebx
push ebx
push dword [ebp + 4]
mov dword [ebp + 0x568c], 1
call esi
mov ecx, dword [ebp + 0x11d0]
lea eax, [edi + 0x24]
mov dword [ecx + 0x160], eax
push ebp
mov dword [esp + 0x6c], eax
mov dword [0x5531d0], 1
call fcn.004b6a59
mov ecx, dword [esp + 0x68]
mov eax, dword [ecx]
push ebx
push 0x550314
push 0x550300
push ebx
push str.SoftwareMicrosoftWindowsShellAssociationsUrlAssociationshttpUserChoice
call dword [eax + 0x14]
push eax
call fcn.004e233c
add esp, 0x14
cmp eax, ebx
je 0x4a7be2
mov edx, dword [eax]
push 6
mov ecx, eax
call dword [edx + 0x1c]
mov eax, dword [ebp + 0x11d0]
add eax, 4
push 0xffffffffffffffec
push dword [eax]
call dword [0x508504]
or eax, 0x80
push eax
mov eax, dword [ebp + 0x11d0]
push 0xffffffffffffffec
push dword [eax + 4]
call dword [0x508508]
mov eax, dword [ebp + 0x11d0]
push ebx
push dword [eax + 4]
call dword [0x5084b4]
push dword [esp + 0x3c]
mov ecx, dword [esp + 0x6c]
push dword [esp + 0x3c]
mov eax, dword [ecx]
call dword [eax + 0x10]
mov eax, dword [esp + 0x2c]
cmp eax, ebx
je 0x4a7c45
push dword [esp + 0x3c]
lea ecx, [eax + 0x24]
push dword [esp + 0x3c]
mov eax, dword [ecx]
call dword [eax + 0x10]
mov eax, dword [ebp + 0x11d0]
push 0x40
push dword [esp + 0x40]
push dword [esp + 0x40]
push dword [esp + 0x40]
push dword [esp + 0x40]
push 0xffffffffffffffff
push dword [eax + 4]
call esi
mov eax, ebp
call fcn.004b6d3c
mov eax, dword [ebp + 0x1208]
cmp eax, ebx
je 0x4a7cc6
fld dword [edi + 0x4c]
fsub qword [0x531f10]
fstp dword [eax + 0x44]
mov eax, dword [ebp + 0x11d0]
push dword [eax + 4]
mov eax, dword [ebp + 0x1208]
push dword [eax + 4]
call dword [0x5084b4]
mov eax, dword [ebp + 0x1208]
push dword [esp + 0x3c]
lea ecx, [eax + 0x24]
push dword [esp + 0x3c]
mov eax, dword [ecx]
call dword [eax + 0x10]
mov eax, dword [ebp + 0x1208]
push 3
pop edi
push edi
push ebx
push ebx
push ebx
push ebx
push 0xffffffffffffffff
push dword [eax + 4]
call esi
jmp 0x4a7cc9
push 3
pop edi
mov eax, dword [ebp + 0x11e4]
cmp eax, ebx
mov dword [ebp + 0x568c], ebx
je 0x4a7ce5
push edi
push ebx
push ebx
push ebx
push ebx
push 0xffffffffffffffff
push dword [eax + 4]
call esi
mov eax, dword [ebp + 0x11d8]
cmp eax, ebx
je 0x4a7cfb
push edi
push ebx
push ebx
push ebx
push ebx
push 0xffffffffffffffff
push dword [eax + 4]
call esi
mov eax, dword [ebp + 0x11e0]
cmp eax, ebx
je 0x4a7d11
push edi
push ebx
push ebx
push ebx
push ebx
push 0xffffffffffffffff
push dword [eax + 4]
call esi
mov eax, dword [ebp + 0x11e8]
cmp eax, ebx
je 0x4a7d27
push edi
push ebx
push ebx
push ebx
push ebx
push 0xffffffffffffffff
push dword [eax + 4]
call esi
mov eax, dword [ebp + 0x11f4]
cmp eax, ebx
je 0x4a7d3d
push edi
push ebx
push ebx
push ebx
push ebx
push 0xffffffffffffffff
push dword [eax + 4]
call esi
mov eax, dword [ebp + 0x11dc]
cmp eax, ebx
je 0x4a7d53
push edi
push ebx
push ebx
push ebx
push ebx
push 0xffffffffffffffff
push dword [eax + 4]
call esi
mov eax, dword [ebp + 0x11ec]
cmp eax, ebx
je 0x4a7d69
push edi
push ebx
push ebx
push ebx
push ebx
push 0xffffffffffffffff
push dword [eax + 4]
call esi
mov eax, dword [ebp + 0x11f8]
cmp eax, ebx
je 0x4a7d7f
push edi
push ebx
push ebx
push ebx
push ebx
push 0xffffffffffffffff
push dword [eax + 4]
call esi
mov eax, dword [ebp + 0x11fc]
cmp eax, ebx
je 0x4a7d95
push edi
push ebx
push ebx
push ebx
push ebx
push 0xffffffffffffffff
push dword [eax + 4]
call esi
mov eax, dword [ebp + 0x1200]
cmp eax, ebx
je 0x4a7dab
push edi
push ebx
push ebx
push ebx
push ebx
push 0xffffffffffffffff
push dword [eax + 4]
call esi
mov eax, dword [ebp + 0x1204]
cmp eax, ebx
je 0x4a7dc1
push edi
push ebx
push ebx
push ebx
push ebx
push 0xffffffffffffffff
push dword [eax + 4]
call esi
cmp dword [ebp + 0x11d4], ebx
je 0x4a8819
mov edi, dword [esp + 0x68]
mov eax, dword [edi]
mov esi, str.filesizetxt
push esi
mov ecx, edi
call dword [eax + 0x14]
cmp eax, ebx
je 0x4a7deb
mov edx, dword [eax]
push 6
mov ecx, eax
call dword [edx + 0x1c]
mov eax, dword [edi]
push 0x52fb80
mov ecx, edi
call dword [eax + 0x14]
cmp eax, ebx
je 0x4a7e04
mov edx, dword [eax]
push 6
mov ecx, eax
call dword [edx + 0x1c]
mov ecx, edi
mov eax, dword [ecx]
push esi
call dword [eax + 0x14]
mov ebx, eax
mov edi, 0x553a08
call fcn.004bc5c7
jmp 0x4a8819
add edi, 0x24
cmp dword [ebp + 0x11d4], esi
mov eax, dword [edi]
mov ecx, edi
je 0x4a7e6e
mov esi, str.filesizetxt
push esi
call dword [eax + 0x14]
test eax, eax
je 0x4a7e42
mov edx, dword [eax]
push 7
mov ecx, eax
call dword [edx + 0x1c]
mov eax, dword [edi]
push 0x52fb80
mov ecx, edi
call dword [eax + 0x14]
test eax, eax
je 0x4a7e5b
mov edx, dword [eax]
push 7
mov ecx, eax
call dword [edx + 0x1c]
mov eax, dword [ebp + 0x11d4]
lea ecx, [eax + 0x24]
mov eax, dword [ecx]
push esi
call dword [eax + 0x14]
xor esi, esi
jmp 0x4a7e76
push str.filesizetxt
call dword [eax + 0x14]
cmp dword [0x5531d4], esi
mov dword [0x5531dc], esi
je 0x4a7ea9
push 0x52a7d0
push ebx
call fcn.0042ad97
lea ecx, [eax - 0x24]
neg eax
sbb eax, eax
and eax, ecx
lea ecx, [eax + 0x24]
mov dword [esp + 0x14], eax
mov eax, dword [ecx]
push 0x52fb98
call dword [eax + 0x14]
mov ebx, eax
mov edi, 0x553a08
call fcn.004bc5c7
cmp dword [0x5531d4], 0
push 5
pop ecx
je 0x4a7ed2
mov edi, dword [esp + 0x14]
lea esi, [ebp + 0x4b88]
add edi, 0x3c
rep movsd dword es:[edi], dword [esi]
jmp 0x4a7f26
cmp dword [0x553298], 0
mov esi, 0x5531e4
je 0x4a7efe
mov edi, dword [esp + 0x14]
add edi, 0x3c
rep movsd dword es:[edi], dword [esi]
fld dword [0x5531f4]
mov eax, dword [ebp + 0x11d0]
fstp dword [eax + 0x4c]
mov eax, dword [esp + 0x14]
jmp 0x4a7f1c
mov eax, dword [esp + 0x14]
lea edi, [eax + 0x3c]
rep movsd dword es:[edi], dword [esi]
cmp dword [0x553274], 0
je 0x4a7f1c
fld dword [eax + 0x4c]
fisub dword [ebp + 0x4b9c]
fstp dword [eax + 0x4c]
lea ecx, [eax + 0x24]
mov eax, dword [ecx]
push 6
call dword [eax + 0x1c]
mov eax, dword [ebp + 0x11d0]
mov esi, dword [0x5084b4]
xor ebx, ebx
mov dword [eax + 0x160], ebx
push dword [ebp + 4]
mov eax, dword [ebp + 0x11d0]
push dword [eax + 4]
call esi
push dword [ebp + 4]
mov eax, dword [esp + 0x18]
push dword [eax + 4]
call esi
mov eax, dword [ebp + 0x11d0]
add eax, 4
push 0xfffffffffffffff0
push dword [eax]
call dword [0x508504]
and eax, 0x2fffffff
or eax, 0x40000000
push eax
mov eax, dword [ebp + 0x11d0]
push 0xfffffffffffffff0
push dword [eax + 4]
call dword [0x508508]
mov esi, dword [ebp + 0x11d0]
call fcn.004cb433
push ebp
mov dword [0x5531d0], ebx
call fcn.004b6a59
push ebp
call fcn.004a8d63
cmp dword [0x553298], ebx
push 0x40
pop edi
mov dword [esp + 0x68], edi
je 0x4a7fd7
cmp dword [0x5531d4], ebx
jne 0x4a808d
mov edi, dword [ebp + 0x11d0]
push 5
add edi, 0x3c
pop ecx
mov esi, 0x553280
rep movsd dword es:[edi], dword [esi]
mov edi, dword [esp + 0x68]
jmp 0x4a808d
lea eax, [ebp + 0x11f0]
mov ecx, dword [eax]
fld dword [ecx + 0x40]
mov ecx, dword [ebp + 0x11d0]
fld1
fadd st(1), st(0)
fxch st(1)
fstp dword [esp + 0x68]
fld dword [esp + 0x68]
fstp dword [ecx + 0x40]
mov eax, dword [eax]
fadd dword [eax + 0x4c]
mov eax, dword [ebp + 0x11d0]
fstp dword [esp + 0x68]
fld dword [esp + 0x68]
fstp dword [eax + 0x44]
mov eax, dword [ebp + 0x11d0]
fld dword [str.enable]
fstp dword [eax + 0x48]
mov eax, dword [ebp + 0x11d0]
fld dword [0x531ffc]
fstp dword [eax + 0x4c]
mov eax, dword [ebp + 0x11d0]
mov dword [eax + 0x3c], 2
mov eax, dword [ebp + 0x11d0]
mov dword [eax + 0x68], ebx
movzx edx, word [ebp + 0x64]
mov eax, dword [ebp + 0x11d0]
push edx
movzx edx, word [ebp + 0x60]
lea ecx, [eax + 0x24]
mov eax, dword [ecx]
push edx
call dword [eax + 0x10]
mov esi, dword [ebp + 0x11d0]
xor eax, eax
inc eax
call fcn.004ca3f2
cmp dword [0x553320], ebx
jne 0x4a8076
mov edi, 0x80
cmp dword [0x553274], ebx
je 0x4a808d
mov ecx, dword [esp + 0x18]
cmp ecx, ebx
je 0x4a808d
mov eax, dword [ecx]
push 7
call dword [eax + 0x1c]
mov eax, dword [ebp + 0x11d0]
mov esi, dword [0x50852c]
or edi, 2
push edi
push dword [ebp + 0x5684]
push dword [ebp + 0x5680]
push ebx
push ebx
push ebx
push dword [eax + 4]
call esi
mov eax, dword [ebp + 0x1208]
cmp eax, ebx
je 0x4a80d9
push dword [ebp + 4]
push dword [eax + 4]
call dword [0x5084b4]
mov eax, dword [ebp + 0x1208]
push 3
push ebx
push ebx
push ebx
push ebx
push ebx
push dword [eax + 4]
call esi
cmp dword [0x553248], ebx
je 0x4a80ec
push 1
mov ebx, ebp
call fcn.004a6d1a
xor ebx, ebx
mov edi, dword [ebp + 0x11d0]
call fcn.004c807a
push 1
push dword [ebp + 4]
call dword [0x508534]
lea eax, [esp + 0x30]
push eax
push dword [ebp + 4]
call dword [0x508538]
lea edi, [ebp + 0x5628]
cmp dword [edi], ebx
je 0x4a8124
push ebp
call fcn.004a8973
mov dword [edi], ebx
jmp 0x4a814b
mov eax, dword [0x5531fc]
mov ecx, dword [0x553204]
mov edx, dword [0x553200]
push 4
sub ecx, eax
push ecx
mov ecx, dword [0x5531f8]
sub edx, ecx
push edx
push eax
push ecx
push ebx
push dword [ebp + 4]
call esi
call fcn.004b6a3b
mov edi, eax
mov eax, dword [ebp + 0x11d8]
cmp eax, ebx
je 0x4a816d
cmp edi, ebx
jne 0x4a816d
push 3
push ebx
push ebx
push ebx
push ebx
push 0xfffffffffffffffe
push dword [eax + 4]
call esi
mov eax, dword [ebp + 0x1204]
cmp eax, ebx
je 0x4a8188
cmp edi, ebx
jne 0x4a8188
push 3
push ebx
push ebx
push ebx
push ebx
push 0xfffffffffffffffe
push dword [eax + 4]
call esi
mov ecx, dword [ebp + 0x11f8]
cmp ecx, ebx
je 0x4a81a8
call fcn.004b6a3b
cmp eax, ebx
jne 0x4a81a8
push 3
push ebx
push ebx
push ebx
push ebx
push 0xfffffffffffffffe
push dword [ecx + 4]
call esi
mov ecx, dword [ebp + 0x1200]
cmp ecx, ebx
je 0x4a81c8
call fcn.004b6a3b
cmp eax, ebx
jne 0x4a81c8
push 3
push ebx
push ebx
push ebx
push ebx
push 0xfffffffffffffffe
push dword [ecx + 4]
call esi
mov ecx, dword [ebp + 0x11f4]
cmp ecx, ebx
je 0x4a81e8
call fcn.004b6a3b
cmp eax, ebx
jne 0x4a81e8
push 3
push ebx
push ebx
push ebx
push ebx
push 0xfffffffffffffffe
push dword [ecx + 4]
call esi
mov ecx, dword [ebp + 0x11e4]
cmp ecx, ebx
je 0x4a8819
call fcn.004b6a3b
test eax, eax
jne 0x4a8819
push 3
push eax
push eax
push eax
push eax
push 0xfffffffffffffffe
push dword [ecx + 4]
call esi
jmp 0x4a8819
test eax, eax
je 0x4a8228
push dword [0x5531d4]
mov ecx, ebp
push 0
call fcn.004a7949
xor eax, eax
push eax
push eax
push 0x46f
mov dword [0x5531dc], eax
push dword [ebp + 4]
call dword [0x508484]
push 0x52a7f0
lea edi, [ebp + 0xa8]
push edi
call fcn.0042ad97
mov ebx, eax
add eax, 0xffffffdc
neg ebx
sbb ebx, ebx
push esi
and ebx, eax
push edi
mov dword [esp + 0x34], ebx
call fcn.0042ad97
mov esi, eax
add eax, 0xffffffdc
neg esi
sbb esi, esi
push 0x52a7d0
and esi, eax
push edi
mov dword [esp + 0x30], esi
call fcn.0042ad97
mov edi, eax
add eax, 0xffffffdc
neg edi
sbb edi, edi
and edi, eax
push 0x52f494
lea eax, [ebp + 0xa8]
push eax
mov dword [esp + 0x2c], edi
call fcn.0042ad97
lea ecx, [eax - 0x24]
neg eax
sbb eax, eax
and eax, ecx
cmp dword [esp + 0x6c], 0
mov dword [esp + 0x1c], eax
mov eax, dword [0x5531d4]
je 0x4a8546
mov eax, dword [ebp + 0x11d4]
test eax, eax
je 0x4a82d1
lea ecx, [eax + 0x24]
mov eax, dword [ecx]
push 7
call dword [eax + 0x1c]
test edi, edi
je 0x4a797c
cmp dword [ebp + 0x5600], 0
je 0x4a82f5
push 0
lea ecx, [ebp + 0xa4]
mov eax, dword [ecx]
push 0
push 0x1051
call dword [eax]
cmp dword [0x553248], 0
je 0x4a830c
mov ecx, dword [esp + 0x1c]
add ecx, 0x24
mov eax, dword [ecx]
push 7
call dword [eax + 0x1c]
lea eax, [esp + 0x30]
push eax
push dword [ebp + 4]
call dword [0x50855c]
cmp dword [0x553298], 0
je 0x4a8342
mov esi, dword [ebp + 0x11d0]
mov ebx, dword [esp + 0x2c]
push 5
add esi, 0x3c
pop ecx
mov edi, 0x553280
rep movsd dword es:[edi], dword [esi]
mov esi, dword [esp + 0x28]
mov edi, dword [esp + 0x24]
mov eax, dword [ebp + 0x11d0]
fld dword [0x531e48]
fst dword [eax + 0x40]
mov eax, dword [ebp + 0x11d0]
fld dword [0x531e6c]
add edi, 0x24
fst dword [eax + 0x44]
mov eax, dword [ebp + 0x11d0]
fxch st(1)
lea ecx, [ebx + 0x24]
fstp dword [eax + 0x48]
mov eax, dword [ebp + 0x11d0]
push 7
fstp dword [eax + 0x4c]
mov eax, dword [ebp + 0x11d0]
mov dword [eax + 0x3c], 0x30
mov eax, dword [ebp + 0x11d0]
mov dword [eax + 0x160], edi
mov eax, dword [ecx]
call dword [eax + 0x1c]
lea ecx, [esi + 0x24]
mov eax, dword [ecx]
push 7
call dword [eax + 0x1c]
xor esi, esi
push esi
mov ebx, ebp
call fcn.004a8bd0
mov ecx, dword [0x552fd8]
lea edx, [esp + 0x18]
push edx
lea edx, [esp + 0x6c]
mov dword [esp + 0x6c], esi
mov dword [esp + 0x1c], esi
mov eax, dword [ecx]
push edx
call dword [eax + 0x78]
mov ecx, dword [0x553228]
mov eax, dword [0x553230]
xor ebx, ebx
cmp ecx, eax
jne 0x4a8477
cmp ecx, ebx
jne 0x4a8477
mov esi, dword [0x508428]
push 0x10
call esi
push 0x11
mov edi, eax
call esi
mov ecx, dword [0x553260]
mov esi, eax
mov eax, edi
sub eax, ecx
cdq
sub eax, edx
sar eax, 1
mov dword [0x553228], eax
add eax, ecx
mov dword [0x553230], eax
mov eax, dword [esp + 0x18]
cmp eax, ebx
je 0x4a8465
cmp dword [esp + 0x68], ebx
je 0x4a8465
cmp dword [0x553508], ebx
je 0x4a8447
imul eax, ecx
cdq
idiv dword [esp + 0x68]
mov ecx, eax
mov eax, esi
sub eax, ecx
cdq
sub eax, edx
sar eax, 1
mov dword [0x55322c], eax
add eax, ecx
jmp 0x4a84a9
mov ecx, dword [0x553264]
mov eax, esi
sub eax, ecx
cdq
sub eax, edx
sar eax, 1
add ecx, eax
mov dword [0x55322c], eax
mov dword [0x553234], ecx
jmp 0x4a84ae
mov eax, ecx
imul eax, eax, 3
cdq
and edx, 3
add eax, edx
mov ecx, eax
sar ecx, 2
jmp 0x4a8435
cmp dword [0x553234], ebx
jle 0x4a84ae
cmp eax, ebx
jle 0x4a84ae
cmp dword [esp + 0x18], ebx
jle 0x4a84ae
cmp dword [esp + 0x68], ebx
jle 0x4a84ae
cmp dword [0x553508], ebx
je 0x4a84ae
sub eax, ecx
imul eax, dword [esp + 0x18]
cdq
idiv dword [esp + 0x68]
add eax, dword [0x55322c]
mov dword [0x553234], eax
mov esi, 0x553228
mov edi, 0x553238
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [0x553230]
mov eax, dword [0x553228]
mov ecx, dword [0x553268]
sub esi, eax
cmp esi, ecx
jge 0x4a84e8
mov esi, ecx
add eax, esi
mov dword [0x553230], eax
mov eax, dword [0x553238]
add eax, esi
mov dword [0x553240], eax
fild dword [0x553268]
mov edi, dword [0x553234]
mov ebx, dword [0x55322c]
sub edi, ebx
fmul qword [0x531dc0]
fmul qword [0x531db8]
call fcn.004fa970
cmp edi, eax
jge 0x4a852a
lea ecx, [eax + ebx]
mov dword [0x553234], ecx
mov ecx, dword [0x55323c]
add ecx, eax
mov edi, eax
mov dword [0x553244], ecx
push 4
push edi
push esi
push dword [esp + 0x40]
push dword [esp + 0x40]
push 0
push dword [ebp + 4]
call dword [0x50852c]
jmp 0x4a8810
xor esi, esi
cmp edi, esi
je 0x4a797c
cmp eax, esi
je 0x4a856d
cmp dword [ebp + 0x5600], esi
je 0x4a856d
push esi
lea ecx, [ebp + 0xa4]
mov eax, dword [ecx]
push esi
push 0x1051
call dword [eax]
cmp dword [0x553508], esi
mov dword [esp + 0x20], 1
je 0x4a858a
cmp dword [0x5531a8], 2
jge 0x4a8650
mov eax, dword [0x553214]
cmp eax, esi
mov ecx, dword [0x553210]
mov dword [esp + 0x20], esi
jne 0x4a85a5
cmp ecx, esi
je 0x4a797c
sub ecx, dword [0x553208]
sub eax, dword [0x55320c]
mov dword [esp + 0x68], ecx
mov dword [esp + 0x18], eax
lea eax, [esp + 0x50]
push eax
push dword [ebp + 4]
call dword [0x50855c]
cmp dword [0x553248], 0
je 0x4a86c2
mov ecx, dword [esp + 0x1c]
add ecx, 0x24
mov eax, dword [ecx]
push 6
call dword [eax + 0x1c]
push 1
mov ebx, ebp
call fcn.004a6d1a
mov eax, dword [ebp + 0x11d0]
test eax, eax
je 0x4a8602
push dword [ebp + 4]
push eax
lea eax, [esp + 0x48]
call fcn.004ca345
mov eax, dword [esp + 0x48]
cmp dword [esp + 0x68], eax
jl 0x4a8610
mov dword [esp + 0x68], eax
mov eax, dword [esp + 0x4c]
cmp dword [esp + 0x18], eax
jl 0x4a861e
mov dword [esp + 0x18], eax
mov eax, dword [0x553258]
mov ecx, dword [0x55326c]
add eax, ecx
cmp dword [esp + 0x68], eax
jge 0x4a86c2
cmp dword [esp + 0x20], 0
mov dword [esp + 0x68], eax
je 0x4a86b4
mov ecx, dword [0x553218]
add ecx, eax
mov dword [0x553220], ecx
jmp 0x4a86c2
mov eax, dword [0x553224]
cmp eax, esi
mov ecx, dword [0x553220]
jne 0x4a8667
cmp ecx, esi
je 0x4a797c
sub ecx, dword [0x553218]
sub eax, dword [0x55321c]
cmp ecx, esi
mov dword [esp + 0x68], ecx
mov dword [esp + 0x18], eax
je 0x4a8687
cmp eax, esi
jne 0x4a85b9
mov eax, dword [0x553210]
sub eax, dword [0x553208]
mov esi, 0x553208
mov dword [esp + 0x68], eax
mov eax, dword [0x553214]
sub eax, dword [0x55320c]
mov edi, 0x553218
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
jmp 0x4a85b5
mov ecx, dword [0x553208]
add ecx, eax
mov dword [0x553210], ecx
mov eax, dword [esp + 0x24]
xor esi, esi
push esi
push dword [eax + 4]
call dword [0x508534]
mov dword [ebp + 0x68], esi
cmp dword [0x553298], esi
je 0x4a86f2
mov edi, dword [ebp + 0x11d0]
push 5
add edi, 0x3c
pop ecx
mov esi, 0x553280
rep movsd dword es:[edi], dword [esi]
jmp 0x4a8755
lea eax, [ebp + 0x11f0]
mov ecx, dword [eax]
fld dword [ecx + 0x40]
mov ecx, dword [ebp + 0x11d0]
fld1
fadd st(1), st(0)
fxch st(1)
fstp dword [esp + 0x24]
fld dword [esp + 0x24]
fstp dword [ecx + 0x40]
mov eax, dword [eax]
fadd dword [eax + 0x4c]
mov eax, dword [ebp + 0x11d0]
fstp dword [esp + 0x24]
fld dword [esp + 0x24]
fstp dword [eax + 0x44]
mov eax, dword [ebp + 0x11d0]
fld dword [str.enable]
fstp dword [eax + 0x48]
mov eax, dword [ebp + 0x11d0]
fld dword [0x531ffc]
fstp dword [eax + 0x4c]
mov eax, dword [ebp + 0x11d0]
mov dword [eax + 0x3c], 2
mov ebx, dword [esp + 0x28]
push 5
pop ecx
push dword [esp + 0x18]
lea edi, [ebx + 0x3c]
push dword [esp + 0x6c]
mov esi, 0x5531e4
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp + 0x11d0]
xor edi, edi
mov dword [eax + 0x160], edi
mov eax, dword [ebp + 0x11d0]
lea ecx, [ebp + 0x24]
mov dword [eax + 0x68], edi
mov eax, dword [ecx]
call dword [eax + 0x10]
push dword [ebp + 4]
push dword [ebx + 4]
call dword [0x5084b4]
mov eax, dword [esp + 0x2c]
mov esi, dword [0x508534]
push 5
push dword [eax + 4]
call esi
push 5
push dword [ebx + 4]
call esi
push 4
push dword [esp + 0x1c]
push dword [esp + 0x70]
push dword [esp + 0x60]
push dword [esp + 0x60]
push edi
push dword [ebp + 4]
call dword [0x50852c]
mov eax, dword [0x5531a8]
cmp eax, 2
je 0x4a87fc
cmp eax, 3
je 0x4a87fc
mov eax, dword [ebp + 0x11d0]
lea ecx, [eax + 0x24]
mov eax, dword [ecx]
push 0x52f7b4
call dword [eax + 0x14]
cmp eax, edi
je 0x4a87fc
mov edx, dword [eax]
push 7
mov ecx, eax
call dword [edx + 0x1c]
mov eax, dword [ebp + 0x11d4]
cmp eax, edi
je 0x4a8810
lea ecx, [eax + 0x24]
mov eax, dword [ecx]
push 6
call dword [eax + 0x1c]
mov eax, dword [esp + 0x6c]
mov dword [0x5531d4], eax
mov eax, dword [0x5531a8]
cmp eax, 3
je 0x4a8842
cmp eax, 2
je 0x4a8842
push 0
push dword [ebp + 0x11d0]
call fcn.004ca4f2
mov eax, dword [ebp + 0x11d0]
call fcn.004ca7c5
jmp 0x4a8865
cmp dword [0x553a08], 6
je 0x4a885a
push 1
push dword [ebp + 0x11d0]
call fcn.004ca4f2
jmp 0x4a8865
mov eax, dword [ebp + 0x11d0]
call fcn.004ca453
mov eax, dword [ebp + 0x11d0]
call fcn.004cb459
push ebp
call fcn.004a8d63
mov esi, 0x553a08
mov eax, esi
call fcn.004bc7f5
call fcn.004bc778
xor ebx, ebx
inc ebx
cmp dword [0x5531d0], 0
lea esi, [ebp + 0x1248]
je 0x4a88dd
cmp dword [0x5531dc], 0
je 0x4a88a9
push 0
push ebx
push 2
jmp 0x4a88be
xor edi, edi
push edi
push edi
push 2
push esi
call fcn.00419503
push edi
push dword [0x5531e0]
push 3
push esi
call fcn.00419503
push dword [0x5531dc]
mov eax, dword [ebp + 0x11d0]
push dword [0x5531e0]
call fcn.004cafeb
jmp 0x4a891f
push 0
push 0xffffffffffffffff
push 2
push esi
call fcn.00419503
push dword [0x5531dc]
mov eax, dword [ebp + 0x11d0]
push dword [0x5531e0]
call fcn.004cafeb
mov eax, dword [0x5531a8]
cmp eax, 3
je 0x4a890f
cmp eax, 2
jne 0x4a891f
push 0
push dword [0x5531e0]
push 3
push esi
call fcn.00419503
mov ebx, esi
call fcn.0041a32e
mov ebx, ebp
call fcn.004b5c9f
mov ecx, ebp
call fcn.004b2d57
mov ecx, dword [ebp + 0x11d0]
test ecx, ecx
je 0x4a8943
mov eax, dword [ecx]
call dword [eax + 0x14]
mov esi, dword [esp + 0x14]
test esi, esi
je 0x4a8966
push dword [esi + 4]
call dword [0x5084a0]
test eax, eax
je 0x4a8966
mov eax, dword [esi + 0x64]
mov ebx, dword [ebp + 0x11d0]
call fcn.004c6df6
xor eax, eax
inc eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x54
ret 8