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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x51a6df
mov eax, dword fs:[0]
push eax
mov eax, 0x129c
call fcn.0048f720
mov eax, dword [0x5750c8]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
cmp dword [ebx + 0x10], 0
mov dword [ebp - 0x113c], ebx
jne 0x4fa439
xor ecx, ecx
mov eax, 0x400
mov edx, 0xa4
mul edx
seto cl
neg ecx
or ecx, eax
xor eax, eax
add ecx, 4
setb al
neg eax
or eax, ecx
push eax
call fcn.0045f05c
add esp, 4
mov dword [ebp - 0x1164], eax
xor esi, esi
mov dword [ebp - 4], esi
cmp eax, esi
je 0x4fa3e0
push fcn.00417af0
push 0x406a50
push 0x400
lea esi, [eax + 4]
push 0xa4
push esi
mov dword [eax], 0x400
call fcn.0045f2ca
mov dword [ebp - 4], 0xffffffff
mov dword [ebx + 0x10], esi
mov edi, 1
mov esi, 0xa4
mov eax, dword [ebx + 0x10]
push 0xa4
add eax, esi
push 0
push eax
call sub.MSVCR100.dll_memset
mov ecx, dword [ebx + 0x10]
lea eax, [edi + 1]
mov dword [esi + ecx + 0x40], eax
add esi, 0xa4
add esp, 0xc
mov edi, eax
cmp esi, 0x29000
jl 0x4fa3f4
mov edx, dword [ebx + 0x10]
mov eax, 1
mov dword [edx + 0x28f9c], 0
mov word [ebx + 0x14], ax
cmp dword [ebx + 0x30], 0
jne 0x4fa476
push 0x14
call dword [sym.imp.MSVCR100.dll_void____cdecl_operator_new_unsigned_int_]
mov esi, eax
add esp, 4
mov dword [ebp - 0x1164], esi
mov dword [ebp - 4], 1
test esi, esi
je 0x4fa46a
mov dword [esi], 0x54fb60
call fcn.00406c00
jmp 0x4fa46c
xor esi, esi
mov dword [ebp - 4], 0xffffffff
mov dword [ebx + 0x30], esi
lea ecx, [ebp - 0x11a8]
mov byte [ebp - 0x1129], 0
mov dword [ebp - 0x11b8], ecx
lea esp, [esp]
lea edx, [ebp - 0x12a8]
push edx
mov ecx, str.particles_particles.xml
call fcn.00423b30
mov dword [ebp - 4], 2
mov esi, dword [ebp - 0x1288]
add esi, 8
mov eax, esi
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4fa4b6
sub eax, edx
mov edi, eax
je 0x4fa4f6
xor ecx, ecx
lea eax, [edi + 0xf]
shr eax, 2
mov edx, 4
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0045f05c
mov ebx, eax
mov dword [ebx], edi
mov byte [edi + ebx + 8], 0
add esp, 4
mov dword [ebp - 0x1120], ebx
mov dword [ebx + 4], edi
jmp 0x4fa506
mov dword [ebp - 0x1120], 0x5b2bb4
mov ebx, dword [ebp - 0x1120]
mov eax, dword [ebx]
push eax
lea edi, [ebx + 8]
push esi
push edi
call sub.MSVCR100.dll_memcpy
add esp, 0xc
mov byte [ebp - 4], 3
mov esi, dword [ebx]
push edi
lea edi, [ebp - 0x1288]
call fcn.004251f0
mov ecx, dword [ebp - 0x1288]
xor eax, eax
add ecx, 8
mov dword [ebp - 0x11ac], eax
mov dword [ebp - 0x11a8], eax
mov byte [ebp - 4], 4
mov dword [ebp - 0x1184], eax
cmp ecx, eax
je 0x4fa571
mov eax, ecx
lea esi, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x4fa552
sub eax, esi
mov ebx, eax
push ecx
lea eax, [ebp - 0x11a8]
call fcn.00429600
mov ebx, dword [ebp - 0x1120]
jmp 0x4fa5a0
push eax
mov esi, 1
lea edi, [ebp - 0x11a8]
mov dword [ebp - 0x1184], eax
call fcn.004299a0
cmp dword [ebp - 0x11a8], 0x20
lea eax, [ebp - 0x11a4]
jbe 0x4fa59d
mov eax, dword [ebp - 0x11a4]
mov byte [eax], 0
xor edi, edi
mov dword [ebp - 0x1174], edi
mov dword [ebp - 0x11b0], edi
mov dword [ebp - 0x1180], edi
mov dword [ebp - 0x1178], edi
mov word [ebp - 0x117b], di
mov byte [ebp - 0x117c], 0
mov byte [ebp - 0x1179], 1
lea eax, [ebp - 0x11b0]
push eax
lea ecx, [ebp - 0x12a8]
push ecx
mov byte [ebp - 4], 5
call fcn.00423cb0
mov byte [ebp - 0x1115], al
mov byte [ebp - 4], 6
cmp byte [ebp - 0x1179], 0
je 0x4fa611
mov eax, dword [ebp - 0x1180]
cmp eax, edi
je 0x4fa611
mov esi, dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete___void__]
push eax
call esi
add esp, 4
jmp 0x4fa617
mov esi, dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete___void__]
cmp byte [ebp - 0x117c], 0
mov dword [ebp - 0x1180], edi
je 0x4fa645
mov ecx, dword [ebp - 0x11b0]
mov edx, dword [ecx]
mov eax, dword [edx + 8]
call eax
mov ecx, dword [ebp - 0x11b0]
cmp ecx, edi
je 0x4fa645
mov edx, dword [ecx]
mov eax, dword [edx]
push 1
call eax
mov eax, dword [ebp - 0x11a8]
mov dword [ebp - 0x11b0], edi
mov word [ebp - 0x117b], 0
mov byte [ebp - 0x117c], 0
mov dword [ebp - 0x1178], edi
cmp eax, edi
je 0x4fa687
cmp eax, 0x20
seta al
test al, al
je 0x4fa681
mov ecx, dword [ebp - 0x11a4]
push ecx
call esi
add esp, 4
mov dword [ebp - 0x11a8], edi
mov byte [ebp - 4], 2
cmp ebx, 0x5b2bb4
je 0x4fa699
push ebx
call esi
add esp, 4
cmp byte [ebp - 0x1115], 0
je 0x4fd97f
mov eax, dword [ebp - 0x1290]
mov byte [ebp - 0x1129], 1
mov esi, eax
cmp eax, edi
je 0x4fa700
lea esp, [esp]
mov eax, dword [esi + 0x20]
mov ecx, str.particle_file
add eax, 8
jmp 0x4fa6d0
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fa6f0
test dl, dl
je 0x4fa6ec
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fa6f0
add eax, 2
add ecx, 2
test dl, dl
jne 0x4fa6d0
xor eax, eax
jmp 0x4fa6f5
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, edi
je 0x4fa740
mov esi, dword [esi + 0x28]
cmp esi, edi
jne 0x4fa6c0
xor eax, eax
mov esi, dword [eax + 0x18]
cmp esi, edi
je 0x4fa7b7
lea ecx, [ecx]
mov eax, dword [esi + 0x20]
mov ecx, str.body
add eax, 8
jmp 0x4fa720
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fa7a3
test dl, dl
je 0x4fa73c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fa7a3
add eax, 2
add ecx, 2
test dl, dl
jne 0x4fa720
xor eax, eax
jmp 0x4fa7a8
mov edx, dword [esi]
mov eax, dword [edx + 0x18]
mov ecx, esi
call eax
test eax, eax
jne 0x4fa795
mov esi, dword [esi + 0x28]
cmp esi, edi
je 0x4fa700
mov eax, dword [esi + 0x20]
mov ecx, str.particle_file
add eax, 8
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fa780
test dl, dl
je 0x4fa77c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fa780
add eax, 2
add ecx, 2
test dl, dl
jne 0x4fa760
xor eax, eax
jmp 0x4fa785
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, edi
je 0x4fa740
mov esi, dword [esi + 0x28]
cmp esi, edi
jne 0x4fa754
jmp 0x4fa700
mov edx, dword [esi]
mov eax, dword [edx + 0x18]
mov ecx, esi
call eax
jmp 0x4fa702
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, edi
je 0x4fa800
mov esi, dword [esi + 0x28]
cmp esi, edi
jne 0x4fa710
xor eax, eax
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x1168], eax
cmp esi, edi
je 0x4fa87b
lea ebx, [ebx]
mov eax, dword [esi + 0x20]
mov ecx, 0x54fb7c
add eax, 8
jmp 0x4fa7e0
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fa863
test dl, dl
je 0x4fa7fc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fa863
add eax, 2
add ecx, 2
test dl, dl
jne 0x4fa7e0
xor eax, eax
jmp 0x4fa868
mov edx, dword [esi]
mov eax, dword [edx + 0x18]
mov ecx, esi
call eax
test eax, eax
jne 0x4fa855
mov esi, dword [esi + 0x28]
cmp esi, edi
je 0x4fa7b7
mov eax, dword [esi + 0x20]
mov ecx, str.body
add eax, 8
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fa840
test dl, dl
je 0x4fa83c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fa840
add eax, 2
add ecx, 2
test dl, dl
jne 0x4fa820
xor eax, eax
jmp 0x4fa845
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, edi
je 0x4fa800
mov esi, dword [esi + 0x28]
cmp esi, edi
jne 0x4fa814
jmp 0x4fa7b7
mov edx, dword [esi]
mov eax, dword [edx + 0x18]
mov ecx, esi
call eax
jmp 0x4fa7b9
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, edi
je 0x4fa918
mov esi, dword [esi + 0x28]
cmp esi, edi
jne 0x4fa7d0
xor esi, esi
push 0xa0a0
mov dword [ebp - 0x1124], esi
call fcn.0045f05c
mov dword [ebp - 0x116c], eax
mov dword [ebp - 0x1140], eax
mov eax, dword [ebp - 0x113c]
add esp, 4
mov dword [eax + 0x20], edi
cmp esi, edi
je 0x4fd45e
mov eax, dword [ebp - 0x1140]
mov ebx, dword [ebp - 0x1124]
mov esi, dword [ebx + 0x4c]
lea edi, [ebx + 0x2c]
mov dword [ebp - 0x111c], eax
add eax, 0xb8
mov dword [ebp - 0x1140], eax
cmp esi, edi
je 0x4fa999
jmp 0x4fa8e0
mov eax, dword [esi + 0x14]
mov ecx, 0x54fb90
add eax, 8
jmp 0x4fa8f0
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fa985
test dl, dl
je 0x4fa914
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fa985
add eax, 2
add ecx, 2
test dl, dl
jne 0x4fa8f0
xor eax, eax
jmp 0x4fa98a
mov edx, dword [esi]
mov eax, dword [edx + 0x18]
mov ecx, esi
call eax
test eax, eax
jne 0x4fa975
mov esi, dword [esi + 0x28]
cmp esi, edi
je 0x4fa87b
mov eax, dword [esi + 0x20]
mov ecx, 0x54fb7c
add eax, 8
jmp 0x4fa940
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fa960
test dl, dl
je 0x4fa95c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fa960
add eax, 2
add ecx, 2
test dl, dl
jne 0x4fa940
xor eax, eax
jmp 0x4fa965
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, edi
je 0x4fa918
mov esi, dword [esi + 0x28]
cmp esi, edi
jne 0x4fa930
jmp 0x4fa87b
mov edx, dword [esi]
mov eax, dword [edx + 0x18]
mov ecx, esi
call eax
mov esi, eax
jmp 0x4fa87d
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4faa00
mov esi, dword [esi + 0x20]
cmp esi, edi
jne 0x4fa8e0
xor ecx, ecx
call fcn.00419140
mov ecx, dword [ebp - 0x113c]
mov edx, dword [ecx + 0x20]
push 0xb8
mov dword [ebp + edx*4 - 0x1110], eax
mov eax, dword [ebp - 0x111c]
push 0
push eax
call sub.MSVCR100.dll_memset
mov esi, dword [edi + 0x20]
add esp, 0xc
cmp esi, edi
je 0x4faa3c
lea ecx, [ecx]
mov eax, dword [esi + 0x14]
mov ecx, str.useDepth
add eax, 8
jmp 0x4fa9e0
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4faa08
test dl, dl
je 0x4fa9fc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4faa08
add eax, 2
add ecx, 2
test dl, dl
jne 0x4fa9e0
xor eax, eax
jmp 0x4faa0d
mov ecx, dword [esi + 0x18]
add ecx, 8
jmp 0x4fa99b
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4faa1a
mov esi, dword [esi + 0x20]
cmp esi, edi
jne 0x4fa9d0
jmp 0x4faa3c
mov ecx, dword [ebp - 0x111c]
mov eax, dword [esi + 0x18]
add ecx, 0xb4
push ecx
add eax, 8
push 0x553768
push eax
call dword [sym.imp.MSVCR100.dll_sscanf_s]
add esp, 0xc
mov esi, dword [ebx + 0x18]
test esi, esi
je 0x4faa80
mov eax, dword [esi + 0x20]
mov ecx, 0x54fbac
add eax, 8
mov edi, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4faa70
test dl, dl
je 0x4faa6c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4faa70
add eax, 2
add ecx, 2
test dl, dl
jne 0x4faa50
xor eax, eax
jmp 0x4faa75
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4faac4
mov esi, dword [esi + 0x28]
test esi, esi
jne 0x4faa43
xor eax, eax
mov esi, dword [eax + 0x4c]
lea edi, [eax + 0x2c]
cmp esi, edi
je 0x4fab4b
mov eax, dword [esi + 0x14]
mov ecx, 0x54fbb4
add eax, 8
jmp 0x4faaa0
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fab33
test dl, dl
je 0x4faac0
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fab33
add eax, 2
add ecx, 2
test dl, dl
jne 0x4faaa0
xor eax, eax
jmp 0x4fab38
mov edx, dword [esi]
mov eax, dword [edx + 0x18]
mov ecx, esi
call eax
test eax, eax
jne 0x4fab25
mov esi, dword [esi + 0x28]
test esi, esi
je 0x4faa80
jmp 0x4faae0
mov eax, dword [esi + 0x20]
mov ecx, 0x54fbac
add eax, 8
jmp 0x4faaf0
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fab10
test dl, dl
je 0x4fab0c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fab10
add eax, 2
add ecx, 2
test dl, dl
jne 0x4faaf0
xor eax, eax
jmp 0x4fab15
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4faac4
mov esi, dword [esi + 0x28]
test esi, esi
jne 0x4faae0
jmp 0x4faa80
mov edx, dword [esi]
mov eax, dword [edx + 0x18]
mov ecx, esi
call eax
jmp 0x4faa82
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4fac5a
mov esi, dword [esi + 0x20]
cmp esi, edi
jne 0x4faa90
xor eax, eax
push eax
push 0x54bd84
lea ecx, [ebp - 0x110]
push str._s__s.tex
push ecx
call dword [sym.imp.MSVCR100.dll_sprintf]
add esp, 0x10
test byte [0x5fcd40], 1
jne 0x4fabd4
or dword [0x5fcd40], 1
mov byte [ebp - 4], 7
push 0x1c
mov dword [0x5bd2c8], 0
call dword [sym.imp.MSVCR100.dll_void____cdecl_operator_new_unsigned_int_]
add esp, 4
test eax, eax
je 0x4fda02
mov dword [0x5bd2c4], eax
mov dword [eax], eax
mov eax, dword [0x5bd2c4]
mov dword [eax + 4], eax
mov eax, dword [0x5bd2c4]
mov dword [eax + 8], eax
mov edx, dword [0x5bd2c4]
mov byte [edx + 0x18], 1
mov eax, dword [0x5bd2c4]
push 0x52b680
mov byte [eax + 0x19], 1
call fcn.0045f177
add esp, 4
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x11b4]
push ecx
push 0x5bd2c0
lea ecx, [ebp - 0x110]
call fcn.00427c50
mov byte [ebp - 4], 8
mov esi, dword [eax]
test esi, esi
je 0x4fac08
mov edx, dword [esi]
mov eax, dword [edx + 4]
mov ecx, esi
call eax
add eax, 4
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
mov ebx, dword [ebp - 0x111c]
push esi
add ebx, 0xac
push ebx
call dword [sym.imp.KERNEL32.dll_InterlockedExchange]
test eax, eax
je 0x4fac7b
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 4]
call eax
mov esi, eax
lea edi, [esi + 4]
push edi
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
test eax, eax
jne 0x4fac7b
mov ecx, dword [esi + 8]
test ecx, ecx
je 0x4fac6d
mov eax, dword [esi + 8]
push 1
push 0
add eax, 0xc
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedCompareExchange]
cmp eax, 1
je 0x4fac65
mov edx, dword [edi]
jmp 0x4fac7b
mov eax, dword [esi + 0x18]
add eax, 8
jmp 0x4fab4d
mov ecx, dword [esi + 8]
call fcn.004037e0
test esi, esi
je 0x4fac7b
mov eax, dword [esi]
mov edx, dword [eax]
push 1
mov ecx, esi
call edx
push 0
lea eax, [ebp - 0x11b4]
push eax
mov byte [ebp - 4], 2
call dword [sym.imp.KERNEL32.dll_InterlockedExchange]
test eax, eax
je 0x4face2
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 4]
call eax
mov esi, eax
lea edi, [esi + 4]
push edi
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
test eax, eax
jne 0x4face2
mov ecx, dword [esi + 8]
test ecx, ecx
je 0x4facd4
mov eax, dword [esi + 8]
push 1
push 0
add eax, 0xc
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedCompareExchange]
cmp eax, 1
je 0x4faccc
mov edx, dword [edi]
jmp 0x4face2
mov ecx, dword [esi + 8]
call fcn.004037e0
test esi, esi
je 0x4face2
mov eax, dword [esi]
mov edx, dword [eax]
push 1
mov ecx, esi
call edx
mov eax, dword [ebx]
mov ecx, dword [eax + 0x2c]
mov eax, dword [ebx]
mov eax, dword [eax + 0x30]
mov dword [ebp - 0x1114], ecx
fild dword [ebp - 0x1114]
test ecx, ecx
jns 0x4fad02
fadd dword [0x554b74]
mov dword [ebp - 0x1114], eax
fild dword [ebp - 0x1114]
test eax, eax
jns 0x4fad18
fadd dword [0x554b74]
fdivp st(1)
mov eax, dword [ebp - 0x111c]
mov ecx, dword [ebp - 0x1124]
fstp dword [eax + 0xb0]
mov esi, dword [ecx + 0x18]
test esi, esi
je 0x4fad70
mov eax, dword [esi + 0x20]
mov ecx, 0x54fbc8
add eax, 8
mov edi, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fad60
test dl, dl
je 0x4fad5c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fad60
add eax, 2
add ecx, 2
test dl, dl
jne 0x4fad40
xor eax, eax
jmp 0x4fad65
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4fad90
mov esi, dword [esi + 0x28]
test esi, esi
jne 0x4fad33
xor eax, eax
mov ecx, dword [eax + 0x18]
test ecx, ecx
je 0x4faded
mov edx, dword [ecx]
mov eax, dword [edx + 0x30]
call eax
test eax, eax
je 0x4faded
mov eax, dword [eax + 0x20]
add eax, 8
jmp 0x4fadef
mov edx, dword [esi]
mov eax, dword [edx + 0x18]
mov ecx, esi
call eax
test eax, eax
jne 0x4fade2
mov esi, dword [esi + 0x28]
test esi, esi
je 0x4fad70
mov eax, dword [esi + 0x20]
mov ecx, 0x54fbc8
add eax, 8
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fadd0
test dl, dl
je 0x4fadcc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fadd0
add eax, 2
add ecx, 2
test dl, dl
jne 0x4fadb0
xor eax, eax
jmp 0x4fadd5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4fad90
mov esi, dword [esi + 0x28]
test esi, esi
jne 0x4fada4
jmp 0x4fad70
mov edx, dword [esi]
mov eax, dword [edx + 0x18]
mov ecx, esi
call eax
jmp 0x4fad72
xor eax, eax
push eax
call dword [sym.imp.MSVCR100.dll_atof]
fdiv qword [0x554cb0]
mov ebx, dword [ebp - 0x111c]
mov edi, dword [ebp - 0x1124]
add esp, 4
fstp dword [ebx]
mov esi, dword [edi + 0x18]
test esi, esi
je 0x4fae50
mov eax, dword [esi + 0x20]
mov ecx, 0x54fbd0
add eax, 8
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fae40
test dl, dl
je 0x4fae3c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fae40
add eax, 2
add ecx, 2
test dl, dl
jne 0x4fae20
xor eax, eax
jmp 0x4fae45
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4faea0
mov esi, dword [esi + 0x28]
test esi, esi
jne 0x4fae14
mov byte [ebx + 0x38], 0
mov esi, dword [edi + 0x18]
test esi, esi
je 0x4fb0e2
nop
mov eax, dword [esi + 0x20]
mov ecx, 0x54fc04
add eax, 8
jmp 0x4fae70
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fb0ce
test dl, dl
je 0x4fae94
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fb0ce
add eax, 2
add ecx, 2
test dl, dl
jne 0x4fae70
xor eax, eax
jmp 0x4fb0d3
mov edx, dword [esi]
mov eax, dword [edx + 0x18]
mov ecx, esi
call eax
test eax, eax
jne 0x4faef5
mov esi, dword [esi + 0x28]
test esi, esi
je 0x4fae50
mov eax, dword [esi + 0x20]
mov ecx, 0x54fbd0
add eax, 8
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4faee0
test dl, dl
je 0x4faedc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4faee0
add eax, 2
add ecx, 2
test dl, dl
jne 0x4faec0
xor eax, eax
jmp 0x4faee5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4faea0
mov esi, dword [esi + 0x28]
test esi, esi
jne 0x4faeb4
jmp 0x4fae50
mov edx, dword [esi]
mov eax, dword [edx + 0x18]
mov ecx, esi
call eax
test eax, eax
je 0x4fae50
mov esi, dword [edi + 0x18]
test esi, esi
je 0x4faf50
lea ecx, [ecx]
mov eax, dword [esi + 0x20]
mov ecx, 0x54fbd8
add eax, 8
jmp 0x4faf20
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4faf40
test dl, dl
je 0x4faf3c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4faf40
add eax, 2
add ecx, 2
test dl, dl
jne 0x4faf20
xor eax, eax
jmp 0x4faf45
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4faf70
mov esi, dword [esi + 0x28]
test esi, esi
jne 0x4faf10
xor eax, eax
mov ecx, dword [eax + 0x18]
test ecx, ecx
je 0x4fafcd
mov edx, dword [ecx]
mov eax, dword [edx + 0x30]
call eax
test eax, eax
je 0x4fafcd
mov eax, dword [eax + 0x20]
add eax, 8
jmp 0x4fafcf
mov edx, dword [esi]
mov eax, dword [edx + 0x18]
mov ecx, esi
call eax
test eax, eax
jne 0x4fafc2
mov esi, dword [esi + 0x28]
test esi, esi
je 0x4faf50
mov eax, dword [esi + 0x20]
mov ecx, 0x54fbd8
add eax, 8
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fafb0
test dl, dl
je 0x4fafac
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fafb0
add eax, 2
add ecx, 2
test dl, dl
jne 0x4faf90
xor eax, eax
jmp 0x4fafb5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4faf70
mov esi, dword [esi + 0x28]
test esi, esi
jne 0x4faf84
jmp 0x4faf50
mov edx, dword [esi]
mov eax, dword [edx + 0x18]
mov ecx, esi
call eax
jmp 0x4faf52
xor eax, eax
mov edx, str.Point
mov ecx, eax
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x4faff6
test bl, bl
je 0x4faff2
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x4faff6
add ecx, 2
add edx, 2
test bl, bl
jne 0x4fafd6
xor ecx, ecx
jmp 0x4faffb
sbb ecx, ecx
sbb ecx, 0xffffffff
test ecx, ecx
jne 0x4fb00e
mov ecx, dword [ebp - 0x111c]
mov byte [ecx + 0x38], 0
jmp 0x4fae54
mov edx, str.Vortex
mov ecx, eax
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x4fb035
test bl, bl
je 0x4fb031
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x4fb035
add ecx, 2
add edx, 2
test bl, bl
jne 0x4fb015
xor ecx, ecx
jmp 0x4fb03a
sbb ecx, ecx
sbb ecx, 0xffffffff
test ecx, ecx
jne 0x4fb04d
mov edx, dword [ebp - 0x111c]
mov byte [edx + 0x38], 1
jmp 0x4fae54
mov edx, str.Direction
mov ecx, eax
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x4fb074
test bl, bl
je 0x4fb070
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x4fb074
add ecx, 2
add edx, 2
test bl, bl
jne 0x4fb054
xor ecx, ecx
jmp 0x4fb079
sbb ecx, ecx
sbb ecx, 0xffffffff
test ecx, ecx
jne 0x4fb08c
mov eax, dword [ebp - 0x111c]
mov byte [eax + 0x38], 2
jmp 0x4fae54
mov ecx, str.Angular
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fb0b1
test dl, dl
je 0x4fb0ad
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fb0b1
add eax, 2
add ecx, 2
test dl, dl
jne 0x4fb091
xor eax, eax
jmp 0x4fb0b6
sbb eax, eax
sbb eax, 0xffffffff
mov edx, dword [ebp - 0x111c]
test eax, eax
setne cl
dec cl
and cl, 3
mov byte [edx + 0x38], cl
jmp 0x4fae54
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4fb140
mov esi, dword [esi + 0x28]
test esi, esi
jne 0x4fae60
mov edx, dword [ebp - 0x111c]
mov byte [edx + 0x39], 0
mov esi, dword [edi + 0x18]
test esi, esi
je 0x4fb2f4
jmp 0x4fb100
mov eax, dword [esi + 0x20]
mov ecx, str.gravity
add eax, 8
jmp 0x4fb110
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fb2e0
test dl, dl
je 0x4fb134
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fb2e0
add eax, 2
add ecx, 2
test dl, dl
jne 0x4fb110
xor eax, eax
jmp 0x4fb2e5
mov eax, dword [esi]
mov edx, dword [eax + 0x18]
mov ecx, esi
call edx
test eax, eax
jne 0x4fb195
mov esi, dword [esi + 0x28]
test esi, esi
je 0x4fb0e2
mov eax, dword [esi + 0x20]
mov ecx, 0x54fc04
add eax, 8
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fb180
test dl, dl
je 0x4fb17c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fb180
add eax, 2
add ecx, 2
test dl, dl
jne 0x4fb160
xor eax, eax
jmp 0x4fb185
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4fb140
mov esi, dword [esi + 0x28]
test esi, esi
jne 0x4fb154
jmp 0x4fb0e2
mov eax, dword [esi]
mov edx, dword [eax + 0x18]
mov ecx, esi
call edx
test eax, eax
je 0x4fb0e2
mov esi, dword [edi + 0x18]
test esi, esi
je 0x4fb1f0
lea ecx, [ecx]
mov eax, dword [esi + 0x20]
mov ecx, 0x54fc0c
add eax, 8
jmp 0x4fb1c0
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fb1e0
test dl, dl
je 0x4fb1dc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fb1e0
add eax, 2
add ecx, 2
test dl, dl
jne 0x4fb1c0
xor eax, eax
jmp 0x4fb1e5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4fb210
mov esi, dword [esi + 0x28]
test esi, esi
jne 0x4fb1b0
xor eax, eax
mov ecx, dword [eax + 0x18]
test ecx, ecx
je 0x4fb26d
mov eax, dword [ecx]
mov edx, dword [eax + 0x30]
call edx
test eax, eax
je 0x4fb26d
mov eax, dword [eax + 0x20]
add eax, 8
jmp 0x4fb26f
mov eax, dword [esi]
mov edx, dword [eax + 0x18]
mov ecx, esi
call edx
test eax, eax
jne 0x4fb262
mov esi, dword [esi + 0x28]
test esi, esi
je 0x4fb1f0
mov eax, dword [esi + 0x20]
mov ecx, 0x54fc0c
add eax, 8
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fb250
test dl, dl
je 0x4fb24c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fb250
add eax, 2
add ecx, 2
test dl, dl
jne 0x4fb230
xor eax, eax
jmp 0x4fb255
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4fb210
mov esi, dword [esi + 0x28]
test esi, esi
jne 0x4fb224
jmp 0x4fb1f0
mov eax, dword [esi]
mov edx, dword [eax + 0x18]
mov ecx, esi
call edx
jmp 0x4fb1f2
xor eax, eax
mov edx, str.Local
mov ecx, eax
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x4fb296
test bl, bl
je 0x4fb292
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x4fb296
add ecx, 2
add edx, 2
test bl, bl
jne 0x4fb276
xor ecx, ecx
jmp 0x4fb29b
sbb ecx, ecx
sbb ecx, 0xffffffff
test ecx, ecx
jne 0x4fb2ae
mov eax, dword [ebp - 0x111c]
mov byte [eax + 0x39], 1
jmp 0x4fb0ec
mov ecx, str.Global
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fb2d1
test dl, dl
je 0x4fb2cf
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fb2d1
add eax, 2
add ecx, 2
test dl, dl
jne 0x4fb2b3
xor eax, eax
mov ecx, dword [ebp - 0x111c]
mov byte [ecx + 0x39], 0
jmp 0x4fb0ec
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4fb310
mov esi, dword [esi + 0x28]
test esi, esi
jne 0x4fb100
xor eax, eax
mov ecx, dword [eax + 0x18]
test ecx, ecx
je 0x4fb36d
mov eax, dword [ecx]
mov edx, dword [eax + 0x30]
call edx
test eax, eax
je 0x4fb36d
mov eax, dword [eax + 0x20]
add eax, 8
jmp 0x4fb36f
mov eax, dword [esi]
mov edx, dword [eax + 0x18]
mov ecx, esi
call edx
test eax, eax
jne 0x4fb362
mov esi, dword [esi + 0x28]
test esi, esi
je 0x4fb2f4
mov eax, dword [esi + 0x20]
mov ecx, str.gravity
add eax, 8
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fb350
test dl, dl
je 0x4fb34c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fb350
add eax, 2
add ecx, 2
test dl, dl
jne 0x4fb330
xor eax, eax
jmp 0x4fb355
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4fb310
mov esi, dword [esi + 0x28]
test esi, esi
jne 0x4fb324
jmp 0x4fb2f4
mov eax, dword [esi]
mov edx, dword [eax + 0x18]
mov ecx, esi
call edx
jmp 0x4fb2f6
xor eax, eax
mov edi, dword [sym.imp.MSVCR100.dll_sscanf]
lea ecx, [ebp - 0x1160]
push ecx
lea edx, [ebp - 0x1158]
push edx
lea ecx, [ebp - 0x114c]
push ecx
push 0x54fc24
push eax
call edi
fild dword [ebp - 0x114c]
mov ebx, dword [ebp - 0x111c]
mov edx, dword [ebp - 0x1124]
fstp dword [ebx + 0x20]
add esp, 0x14
fild dword [ebp - 0x1158]
fstp dword [ebx + 0x24]
fild dword [ebp - 0x1160]
fstp dword [ebx + 0x28]
mov esi, dword [edx + 0x18]
test esi, esi
je 0x4fb400
mov eax, dword [esi + 0x20]
mov ecx, 0x54fc38
add eax, 8
mov edi, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fb3f0
test dl, dl
je 0x4fb3ec
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fb3f0
add eax, 2
add ecx, 2
test dl, dl
jne 0x4fb3d0
xor eax, eax
jmp 0x4fb3f5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4fb460
mov esi, dword [esi + 0x28]
test esi, esi
jne 0x4fb3c3
mov edx, dword [ebx + 0x20]
mov eax, dword [ebx + 0x24]
mov ecx, dword [ebx + 0x28]
mov dword [ebx + 0x2c], edx
mov dword [ebx + 0x30], eax
mov dword [ebx + 0x34], ecx
mov edx, dword [ebp - 0x1124]
mov esi, dword [edx + 0x18]
test esi, esi
je 0x4fb5e3
mov eax, dword [esi + 0x20]
mov ecx, str.color
add eax, 8
mov edi, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fb5cf
test dl, dl
je 0x4fb454
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fb5cf
add eax, 2
add ecx, 2
test dl, dl
jne 0x4fb430
xor eax, eax
jmp 0x4fb5d4
mov eax, dword [esi]
mov edx, dword [eax + 0x18]
mov ecx, esi
call edx
test eax, eax
jne 0x4fb4b5
mov esi, dword [esi + 0x28]
test esi, esi
je 0x4fb400
mov eax, dword [esi + 0x20]
mov ecx, 0x54fc38
add eax, 8
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fb4a0
test dl, dl
je 0x4fb49c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fb4a0
add eax, 2
add ecx, 2
test dl, dl
jne 0x4fb480
xor eax, eax
jmp 0x4fb4a5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4fb460
mov esi, dword [esi + 0x28]
test esi, esi
jne 0x4fb474
jmp 0x4fb400
mov eax, dword [esi]
mov edx, dword [eax + 0x18]
mov ecx, esi
call edx
test eax, eax
je 0x4fb400
mov eax, dword [ebp - 0x1124]
mov esi, dword [eax + 0x18]
test esi, esi
je 0x4fb510
mov eax, dword [esi + 0x20]
mov ecx, str.gravity_max
add eax, 8
mov edi, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fb500
test dl, dl
je 0x4fb4fc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fb500
add eax, 2
add ecx, 2
test dl, dl
jne 0x4fb4e0
xor eax, eax
jmp 0x4fb505
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4fb530
mov esi, dword [esi + 0x28]
test esi, esi
jne 0x4fb4d3
xor eax, eax
mov ecx, dword [eax + 0x18]
test ecx, ecx
je 0x4fb58d
mov edx, dword [ecx]
mov eax, dword [edx + 0x30]
call eax
test eax, eax
je 0x4fb58d
mov eax, dword [eax + 0x20]
add eax, 8
jmp 0x4fb58f
mov edx, dword [esi]
mov eax, dword [edx + 0x18]
mov ecx, esi
call eax
test eax, eax
jne 0x4fb582
mov esi, dword [esi + 0x28]
test esi, esi
je 0x4fb510
mov eax, dword [esi + 0x20]
mov ecx, str.gravity_max
add eax, 8
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fb570
test dl, dl
je 0x4fb56c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fb570
add eax, 2
add ecx, 2
test dl, dl
jne 0x4fb550
xor eax, eax
jmp 0x4fb575
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4fb530
mov esi, dword [esi + 0x28]
test esi, esi
jne 0x4fb544
jmp 0x4fb510
mov edx, dword [esi]
mov eax, dword [edx + 0x18]
mov ecx, esi
call eax
jmp 0x4fb512
xor eax, eax
lea ecx, [ebp - 0x1160]
push ecx
lea edx, [ebp - 0x1158]
push edx
lea ecx, [ebp - 0x114c]
push ecx
push 0x54fc44
push eax
call edi
fild dword [ebp - 0x114c]
add esp, 0x14
fstp dword [ebx + 0x2c]
fild dword [ebp - 0x1158]
fstp dword [ebx + 0x30]
fild dword [ebp - 0x1160]
fstp dword [ebx + 0x34]
jmp 0x4fb412
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4fb630
mov esi, dword [esi + 0x28]
test esi, esi
jne 0x4fb423
xor eax, eax
mov esi, dword [eax + 0x4c]
lea ebx, [eax + 0x2c]
mov dword [ebp - 0x1120], ebx
cmp esi, ebx
je 0x4fb6ab
lea esp, [esp]
mov eax, dword [esi + 0x14]
mov ecx, 0x54fc70
add eax, 8
jmp 0x4fb610
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fb693
test dl, dl
je 0x4fb62c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fb693
add eax, 2
add ecx, 2
test dl, dl
jne 0x4fb610
xor eax, eax
jmp 0x4fb698
mov eax, dword [esi]
mov edx, dword [eax + 0x18]
mov ecx, esi
call edx
test eax, eax
jne 0x4fb685
mov esi, dword [esi + 0x28]
test esi, esi
je 0x4fb5e3
mov eax, dword [esi + 0x20]
mov ecx, str.color
add eax, 8
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fb670
test dl, dl
je 0x4fb66c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fb670
add eax, 2
add ecx, 2
test dl, dl
jne 0x4fb650
xor eax, eax
jmp 0x4fb675
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4fb630
mov esi, dword [esi + 0x28]
test esi, esi
jne 0x4fb644
jmp 0x4fb5e3
mov eax, dword [esi]
mov edx, dword [eax + 0x18]
mov ecx, esi
call edx
jmp 0x4fb5e5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4fb810
mov esi, dword [esi + 0x20]
cmp esi, ebx
jne 0x4fb600
xor eax, eax
lea ecx, [ebp - 0x1134]
push ecx
lea edx, [ebp - 0x1128]
push edx
lea ecx, [ebp - 0x1138]
push ecx
lea edx, [ebp - 0x1130]
push edx
push 0x54fc64
push eax
call edi
fild dword [ebp - 0x1134]
fld qword [0x555538]
mov ecx, dword [ebp - 0x111c]
fnstcw word [ebp - 0x1116]
movzx eax, word [ebp - 0x1116]
fmul st(1), st(0)
or eax, 0xc00
mov dword [ebp - 0x1114], eax
fxch st(1)
fldcw word [ebp - 0x1114]
add esp, 0x18
fistp dword [ebp - 0x1114]
movzx eax, byte [ebp - 0x1114]
mov byte [ecx + 0x9b], al
fldcw word [ebp - 0x1116]
fild dword [ebp - 0x1130]
fnstcw word [ebp - 0x1116]
movzx eax, word [ebp - 0x1116]
fmul st(1)
or eax, 0xc00
mov dword [ebp - 0x1114], eax
fldcw word [ebp - 0x1114]
fistp dword [ebp - 0x1114]
movzx edx, byte [ebp - 0x1114]
mov byte [ecx + 0x9a], dl
fldcw word [ebp - 0x1116]
fild dword [ebp - 0x1138]
fnstcw word [ebp - 0x1116]
movzx eax, word [ebp - 0x1116]
fmul st(1)
or eax, 0xc00
mov dword [ebp - 0x1114], eax
fldcw word [ebp - 0x1114]
fistp dword [ebp - 0x1114]
movzx eax, byte [ebp - 0x1114]
mov byte [ecx + 0x99], al
fldcw word [ebp - 0x1116]
fimul dword [ebp - 0x1128]
fnstcw word [ebp - 0x1116]
movzx eax, word [ebp - 0x1116]
or eax, 0xc00
mov dword [ebp - 0x1114], eax
fldcw word [ebp - 0x1114]
fistp dword [ebp - 0x1114]
movzx edx, byte [ebp - 0x1114]
mov byte [ecx + 0x98], dl
mov esi, dword [ebx + 0x20]
fldcw word [ebp - 0x1116]
cmp esi, ebx
je 0x4fb82f
mov eax, dword [esi + 0x14]
mov ecx, 0x54fc88
add eax, 8
mov edi, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fb81b
test dl, dl
je 0x4fb80c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fb81b
add eax, 2
add ecx, 2
test dl, dl
jne 0x4fb7f0
xor eax, eax
jmp 0x4fb820
mov eax, dword [esi + 0x18]
add eax, 8
jmp 0x4fb6ad
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4fb9a0
mov esi, dword [esi + 0x20]
cmp esi, ebx
jne 0x4fb7e3
xor eax, eax
lea ecx, [ebp - 0x1134]
push ecx
lea edx, [ebp - 0x1128]
push edx
lea ecx, [ebp - 0x1138]
push ecx
lea edx, [ebp - 0x1130]
push edx
push 0x54fc7c
push eax
call edi
fild dword [ebp - 0x1134]
fld qword [0x555538]
mov ecx, dword [ebp - 0x111c]
fnstcw word [ebp - 0x1116]
movzx eax, word [ebp - 0x1116]
fmul st(1), st(0)
or eax, 0xc00
mov dword [ebp - 0x1114], eax
fxch st(1)
fldcw word [ebp - 0x1114]
add esp, 0x18
fistp dword [ebp - 0x1114]
movzx eax, byte [ebp - 0x1114]
mov byte [ecx + 0x97], al
fldcw word [ebp - 0x1116]
fild dword [ebp - 0x1130]
fnstcw word [ebp - 0x1116]
movzx eax, word [ebp - 0x1116]
fmul st(1)
or eax, 0xc00
mov dword [ebp - 0x1114], eax
fldcw word [ebp - 0x1114]
fistp dword [ebp - 0x1114]
movzx edx, byte [ebp - 0x1114]
mov byte [ecx + 0x96], dl
fldcw word [ebp - 0x1116]
fild dword [ebp - 0x1138]
fnstcw word [ebp - 0x1116]
movzx eax, word [ebp - 0x1116]
fmul st(1)
or eax, 0xc00
mov dword [ebp - 0x1114], eax
fldcw word [ebp - 0x1114]
fistp dword [ebp - 0x1114]
movzx eax, byte [ebp - 0x1114]
mov byte [ecx + 0x95], al
fldcw word [ebp - 0x1116]
fimul dword [ebp - 0x1128]
fnstcw word [ebp - 0x1116]
movzx eax, word [ebp - 0x1116]
or eax, 0xc00
mov dword [ebp - 0x1114], eax
fldcw word [ebp - 0x1114]
fistp dword [ebp - 0x1114]
movzx edx, byte [ebp - 0x1114]
mov byte [ecx + 0x94], dl
mov esi, dword [ebx + 0x20]
fldcw word [ebp - 0x1116]
cmp esi, ebx
je 0x4fb9bf
jmp 0x4fb970
mov eax, dword [esi + 0x14]
mov ecx, 0x54fc94
add eax, 8
jmp 0x4fb980
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fb9ab
test dl, dl
je 0x4fb99c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fb9ab
add eax, 2
add ecx, 2
test dl, dl
jne 0x4fb980
xor eax, eax
jmp 0x4fb9b0
mov eax, dword [esi + 0x18]
add eax, 8
jmp 0x4fb831
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4fba4b
mov esi, dword [esi + 0x20]
cmp esi, ebx
jne 0x4fb970
mov edi, dword [ebp - 0x111c]
lea ebx, [edi + 0xa4]
lea esi, [edi + 0x94]
lea eax, [ebp - 0x1114]
mov ecx, ebx
call fcn.00403890
mov esi, dword [ebp - 0x111c]
add edi, 0xa8
add esi, 0x98
lea eax, [ebp - 0x1118]
mov ecx, edi
call fcn.00403890
mov eax, dword [ebp - 0x1120]
mov esi, dword [eax + 0x20]
cmp esi, eax
je 0x4fbde7
mov edi, edi
mov eax, dword [esi + 0x14]
mov ecx, 0x54fccc
add eax, 8
jmp 0x4fba20
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fbdcb
test dl, dl
je 0x4fba44
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fbdcb
add eax, 2
add ecx, 2
test dl, dl
jne 0x4fba20
xor eax, eax
jmp 0x4fbdd0
mov eax, dword [esi + 0x18]
add eax, 8
je 0x4fb9bf
mov esi, dword [ebx + 0x20]
cmp esi, ebx
je 0x4fb9bf
mov eax, dword [esi + 0x14]
mov ecx, 0x54fc9c
add eax, 8
lea ecx, [ecx]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fba90
test dl, dl
je 0x4fba8c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fba90
add eax, 2
add ecx, 2
test dl, dl
jne 0x4fba70
xor eax, eax
jmp 0x4fba95
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4fbaa5
mov esi, dword [esi + 0x20]
cmp esi, ebx
jne 0x4fba62
jmp 0x4fb9bf
mov eax, dword [esi + 0x18]
add eax, 8
je 0x4fb9bf
mov esi, dword [ebx + 0x20]
cmp esi, ebx
je 0x4fbb04
jmp 0x4fbac0
mov eax, dword [esi + 0x14]
mov ecx, 0x54fcb0
add eax, 8
jmp 0x4fbad0
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fbaf0
test dl, dl
je 0x4fbaec
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fbaf0
add eax, 2
add ecx, 2
test dl, dl
jne 0x4fbad0
xor eax, eax
jmp 0x4fbaf5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4fbc70
mov esi, dword [esi + 0x20]
cmp esi, ebx
jne 0x4fbac0
xor eax, eax
lea ecx, [ebp - 0x1134]
push ecx
lea edx, [ebp - 0x1128]
push edx
lea ecx, [ebp - 0x1138]
push ecx
lea edx, [ebp - 0x1130]
push edx
push 0x54fca4
push eax
call dword [sym.imp.MSVCR100.dll_sscanf]
fild dword [ebp - 0x1134]
fld qword [0x555538]
mov edi, dword [ebp - 0x111c]
fnstcw word [ebp - 0x1116]
movzx eax, word [ebp - 0x1116]
fmul st(1), st(0)
or eax, 0xc00
mov dword [ebp - 0x1114], eax
fxch st(1)
fldcw word [ebp - 0x1114]
mov ebx, dword [ebp - 0x1120]
add edi, 0xa8
add esp, 0x18
fistp dword [ebp - 0x1114]
movzx eax, byte [ebp - 0x1114]
mov byte [edi + 3], al
fldcw word [ebp - 0x1116]
fild dword [ebp - 0x1130]
fnstcw word [ebp - 0x1116]
movzx eax, word [ebp - 0x1116]
fmul st(1)
or eax, 0xc00
mov dword [ebp - 0x1114], eax
fldcw word [ebp - 0x1114]
fistp dword [ebp - 0x1114]
mov cl, byte [ebp - 0x1114]
mov byte [edi + 2], cl
fldcw word [ebp - 0x1116]
fild dword [ebp - 0x1138]
fnstcw word [ebp - 0x1116]
movzx eax, word [ebp - 0x1116]
fmul st(1)
or eax, 0xc00
mov dword [ebp - 0x1114], eax
fldcw word [ebp - 0x1114]
fistp dword [ebp - 0x1114]
mov dl, byte [ebp - 0x1114]
mov byte [edi + 1], dl
fldcw word [ebp - 0x1116]
fimul dword [ebp - 0x1128]
fnstcw word [ebp - 0x1116]
movzx eax, word [ebp - 0x1116]
or eax, 0xc00
mov dword [ebp - 0x1114], eax
fldcw word [ebp - 0x1114]
fistp dword [ebp - 0x1114]
movzx eax, byte [ebp - 0x1114]
mov byte [edi], al
mov esi, dword [ebx + 0x20]
fldcw word [ebp - 0x1116]
cmp esi, ebx
je 0x4fbc8f
lea ecx, [ecx]
mov eax, dword [esi + 0x14]
mov ecx, 0x54fcc4
add eax, 8
jmp 0x4fbc50
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fbc7b
test dl, dl
je 0x4fbc6c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fbc7b
add eax, 2
add ecx, 2
test dl, dl
jne 0x4fbc50
xor eax, eax
jmp 0x4fbc80
mov eax, dword [esi + 0x18]
add eax, 8
jmp 0x4fbb06
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4fbdc0
mov esi, dword [esi + 0x20]
cmp esi, ebx
jne 0x4fbc40
xor eax, eax
lea ecx, [ebp - 0x1134]
push ecx
lea edx, [ebp - 0x1128]
push edx
lea ecx, [ebp - 0x1138]
push ecx
lea edx, [ebp - 0x1130]
push edx
push 0x54fcb8
push eax
call dword [sym.imp.MSVCR100.dll_sscanf]
fild dword [ebp - 0x1134]
fld qword [0x555538]
mov ebx, dword [ebp - 0x111c]
fnstcw word [ebp - 0x1116]
movzx eax, word [ebp - 0x1116]
fmul st(1), st(0)
or eax, 0xc00
mov dword [ebp - 0x1114], eax
fxch st(1)
fldcw word [ebp - 0x1114]
add ebx, 0xa4
add esp, 0x18
fistp dword [ebp - 0x1114]
movzx eax, byte [ebp - 0x1114]
mov byte [ebx + 3], al
fldcw word [ebp - 0x1116]
fild dword [ebp - 0x1130]
fnstcw word [ebp - 0x1116]
movzx eax, word [ebp - 0x1116]
fmul st(1)
or eax, 0xc00
mov dword [ebp - 0x1114], eax
fldcw word [ebp - 0x1114]
fistp dword [ebp - 0x1114]
mov cl, byte [ebp - 0x1114]
mov byte [ebx + 2], cl
fldcw word [ebp - 0x1116]
fild dword [ebp - 0x1138]
fnstcw word [ebp - 0x1116]
movzx eax, word [ebp - 0x1116]
fmul st(1)
or eax, 0xc00
mov dword [ebp - 0x1114], eax
fldcw word [ebp - 0x1114]
fistp dword [ebp - 0x1114]
mov dl, byte [ebp - 0x1114]
mov byte [ebx + 1], dl
fldcw word [ebp - 0x1116]
fimul dword [ebp - 0x1128]
fnstcw word [ebp - 0x1116]
movzx eax, word [ebp - 0x1116]
or eax, 0xc00
mov dword [ebp - 0x1114], eax
fldcw word [ebp - 0x1114]
fistp dword [ebp - 0x1114]
movzx eax, byte [ebp - 0x1114]
mov byte [ebx], al
fldcw word [ebp - 0x1116]
jmp 0x4fb9fd
mov eax, dword [esi + 0x18]
add eax, 8
jmp 0x4fbc91
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4fbf6b
mov esi, dword [esi + 0x20]
cmp esi, dword [ebp - 0x1120]
jne 0x4fba10
mov esi, dword [ebp - 0x111c]
movzx ecx, byte [esi + 0x97]
movzx eax, byte [esi + 0xa7]
add eax, ecx
cdq
sub eax, edx
movzx edx, byte [esi + 0x94]
sar eax, 1
mov cl, al
movzx eax, byte [ebx]
add eax, edx
cdq
sub eax, edx
movzx edx, byte [esi + 0x95]
sar eax, 1
mov bl, al
movzx eax, byte [esi + 0xa5]
add eax, edx
cdq
sub eax, edx
movzx edx, byte [esi + 0x96]
sar eax, 1
mov byte [ebp - 0x1118], al
movzx eax, byte [esi + 0xa6]
add eax, edx
cdq
sub eax, edx
sar eax, 1
mov byte [ebp - 0x1142], al
movzx eax, byte [ebp - 0x1118]
mov byte [ebp - 0x1141], cl
mov byte [ebp - 0x1143], al
lea ecx, [esi + 0x9c]
lea esi, [ebp - 0x1144]
lea eax, [ebp - 0x1234]
mov byte [ebp - 0x1144], bl
call fcn.00403890
mov esi, dword [ebp - 0x111c]
movzx ecx, byte [esi + 0x9b]
movzx eax, byte [esi + 0xab]
add eax, ecx
cdq
sub eax, edx
movzx edx, byte [edi]
sar eax, 1
mov cl, al
movzx eax, byte [esi + 0x98]
add eax, edx
cdq
sub eax, edx
movzx edx, byte [esi + 0x99]
sar eax, 1
mov bl, al
movzx eax, byte [esi + 0xa9]
add eax, edx
cdq
sub eax, edx
movzx edx, byte [esi + 0x9a]
sar eax, 1
mov byte [ebp - 0x1118], al
movzx eax, byte [esi + 0xaa]
add eax, edx
cdq
sub eax, edx
sar eax, 1
mov byte [ebp - 0x1146], al
movzx eax, byte [ebp - 0x1118]
mov byte [ebp - 0x1145], cl
mov byte [ebp - 0x1147], al
lea ecx, [esi + 0xa0]
lea esi, [ebp - 0x1148]
lea eax, [ebp - 0x125c]
mov byte [ebp - 0x1148], bl
call fcn.00403890
mov ecx, dword [ebp - 0x111c]
mov eax, dword [ebp - 0x1124]
xor edx, edx
mov word [ecx + 4], dx
mov esi, dword [eax + 0x18]
test esi, esi
je 0x4fc328
mov eax, dword [esi + 0x20]
mov ecx, str.friction
add eax, 8
jmp 0x4fbf40
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fc310
test dl, dl
je 0x4fbf64
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fc310
add eax, 2
add ecx, 2
test dl, dl
jne 0x4fbf40
xor eax, eax
jmp 0x4fc315
mov eax, dword [esi + 0x18]
add eax, 8
je 0x4fbde7
mov eax, dword [ebp - 0x1120]
mov esi, dword [eax + 0x20]
cmp esi, eax
je 0x4fbde7
jmp 0x4fbf90
mov eax, dword [esi + 0x14]
mov ecx, 0x54fcd4
add eax, 8
jmp 0x4fbfa0
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fbfc0
test dl, dl
je 0x4fbfbc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fbfc0
add eax, 2
add ecx, 2
test dl, dl
jne 0x4fbfa0
xor eax, eax
jmp 0x4fbfc5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4fbfd9
mov esi, dword [esi + 0x20]
cmp esi, dword [ebp - 0x1120]
jne 0x4fbf90
jmp 0x4fbde7
mov eax, dword [esi + 0x18]
add eax, 8
je 0x4fbde7
mov eax, dword [ebp - 0x1120]
mov esi, dword [eax + 0x20]
cmp esi, eax
je 0x4fc038
mov eax, dword [esi + 0x14]
mov ecx, 0x54fce8
add eax, 8
lea ecx, [ecx]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fc020
test dl, dl
je 0x4fc01c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fc020
add eax, 2
add ecx, 2
test dl, dl
jne 0x4fc000
xor eax, eax
jmp 0x4fc025
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4fc1b0
mov esi, dword [esi + 0x20]
cmp esi, dword [ebp - 0x1120]
jne 0x4fbff2
xor eax, eax
mov edi, dword [sym.imp.MSVCR100.dll_sscanf]
lea ecx, [ebp - 0x1134]
push ecx
lea edx, [ebp - 0x1128]
push edx
lea ecx, [ebp - 0x1138]
push ecx
lea edx, [ebp - 0x1130]
push edx
push 0x54fcdc
push eax
call edi
fild dword [ebp - 0x1134]
fld qword [0x555538]
mov ecx, dword [ebp - 0x111c]
fnstcw word [ebp - 0x1116]
movzx eax, word [ebp - 0x1116]
fmul st(1), st(0)
or eax, 0xc00
mov dword [ebp - 0x1114], eax
fxch st(1)
fldcw word [ebp - 0x1114]
mov ebx, dword [ebp - 0x1120]
add esp, 0x18
fistp dword [ebp - 0x1114]
movzx eax, byte [ebp - 0x1114]
mov byte [ecx + 0xa3], al
fldcw word [ebp - 0x1116]
fild dword [ebp - 0x1130]
fnstcw word [ebp - 0x1116]
movzx eax, word [ebp - 0x1116]
fmul st(1)
or eax, 0xc00
mov dword [ebp - 0x1114], eax
fldcw word [ebp - 0x1114]
fistp dword [ebp - 0x1114]
movzx edx, byte [ebp - 0x1114]
mov byte [ecx + 0xa2], dl
fldcw word [ebp - 0x1116]
fild dword [ebp - 0x1138]
fnstcw word [ebp - 0x1116]
movzx eax, word [ebp - 0x1116]
fmul st(1)
or eax, 0xc00
mov dword [ebp - 0x1114], eax
fldcw word [ebp - 0x1114]
fistp dword [ebp - 0x1114]
movzx eax, byte [ebp - 0x1114]
mov byte [ecx + 0xa1], al
fldcw word [ebp - 0x1116]
fimul dword [ebp - 0x1128]
fnstcw word [ebp - 0x1116]
movzx eax, word [ebp - 0x1116]
or eax, 0xc00
mov dword [ebp - 0x1114], eax
fldcw word [ebp - 0x1114]
fistp dword [ebp - 0x1114]
movzx edx, byte [ebp - 0x1114]
mov byte [ecx + 0xa0], dl
mov esi, dword [ebx + 0x20]
fldcw word [ebp - 0x1116]
cmp esi, ebx
je 0x4fc1cf
lea esp, [esp]
mov eax, dword [esi + 0x14]
mov ecx, 0x54fcfc
add eax, 8
jmp 0x4fc190
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fc1bb
test dl, dl
je 0x4fc1ac
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fc1bb
add eax, 2
add ecx, 2
test dl, dl
jne 0x4fc190
xor eax, eax
jmp 0x4fc1c0
mov eax, dword [esi + 0x18]
add eax, 8
jmp 0x4fc03a
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4fc305
mov esi, dword [esi + 0x20]
cmp esi, ebx
jne 0x4fc180
xor eax, eax
lea ecx, [ebp - 0x1134]
push ecx
lea edx, [ebp - 0x1128]
push edx
lea ecx, [ebp - 0x1138]
push ecx
lea edx, [ebp - 0x1130]
push edx
push str._d__d__d__d
push eax
call edi
fild dword [ebp - 0x1134]
fld qword [0x555538]
mov ecx, dword [ebp - 0x111c]
fnstcw word [ebp - 0x1116]
movzx eax, word [ebp - 0x1116]
fmul st(1), st(0)
or eax, 0xc00
mov dword [ebp - 0x1114], eax
fxch st(1)
fldcw word [ebp - 0x1114]
add esp, 0x18
fistp dword [ebp - 0x1114]
movzx eax, byte [ebp - 0x1114]
mov byte [ecx + 0x9f], al
fldcw word [ebp - 0x1116]
fild dword [ebp - 0x1130]
fnstcw word [ebp - 0x1116]
movzx eax, word [ebp - 0x1116]
fmul st(1)
or eax, 0xc00
mov dword [ebp - 0x1114], eax
fldcw word [ebp - 0x1114]
fistp dword [ebp - 0x1114]
movzx edx, byte [ebp - 0x1114]
mov byte [ecx + 0x9e], dl
fldcw word [ebp - 0x1116]
fild dword [ebp - 0x1138]
fnstcw word [ebp - 0x1116]
movzx eax, word [ebp - 0x1116]
fmul st(1)
or eax, 0xc00
mov dword [ebp - 0x1114], eax
fldcw word [ebp - 0x1114]
fistp dword [ebp - 0x1114]
movzx eax, byte [ebp - 0x1114]
mov byte [ecx + 0x9d], al
fldcw word [ebp - 0x1116]
fimul dword [ebp - 0x1128]
fnstcw word [ebp - 0x1116]
movzx eax, word [ebp - 0x1116]
or eax, 0xc00
mov dword [ebp - 0x1114], eax
fldcw word [ebp - 0x1114]
fistp dword [ebp - 0x1114]
movzx edx, byte [ebp - 0x1114]
mov byte [ecx + 0x9c], dl
fldcw word [ebp - 0x1116]
jmp 0x4fbf19
mov eax, dword [esi + 0x18]
add eax, 8
jmp 0x4fc1d1
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4fc3b0
mov esi, dword [esi + 0x28]
test esi, esi
jne 0x4fbf30
mov ecx, dword [0x57c394]
mov eax, dword [ebp - 0x111c]
mov dword [eax + 8], ecx
mov edx, dword [0x57c398]
mov dword [eax + 0xc], edx
mov ecx, dword [0x57c39c]
mov dword [eax + 0x10], ecx
mov edx, dword [0x57c394]
mov dword [eax + 0x14], edx
mov ecx, dword [0x57c398]
mov dword [eax + 0x18], ecx
mov edx, dword [0x57c39c]
mov dword [eax + 0x1c], edx
mov eax, dword [ebp - 0x1124]
mov esi, dword [eax + 0x18]
test esi, esi
je 0x4fc639
mov eax, dword [esi + 0x20]
mov ecx, str.size
add eax, 8
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fc625
test dl, dl
je 0x4fc3a4
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fc625
add eax, 2
add ecx, 2
test dl, dl
jne 0x4fc380
xor eax, eax
jmp 0x4fc62a
mov edx, dword [esi]
mov eax, dword [edx + 0x18]
mov ecx, esi
call eax
test eax, eax
jne 0x4fc415
mov esi, dword [esi + 0x28]
test esi, esi
je 0x4fc328
jmp 0x4fc3d0
mov eax, dword [esi + 0x20]
mov ecx, str.friction
add eax, 8
jmp 0x4fc3e0
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fc400
test dl, dl
je 0x4fc3fc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fc400
add eax, 2
add ecx, 2
test dl, dl
jne 0x4fc3e0
xor eax, eax
jmp 0x4fc405
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4fc3b0
mov esi, dword [esi + 0x28]
test esi, esi
jne 0x4fc3d0
jmp 0x4fc328
mov edx, dword [esi]
mov eax, dword [edx + 0x18]
mov ecx, esi
call eax
test eax, eax
je 0x4fc328
mov esi, dword [eax + 0x4c]
lea ebx, [eax + 0x2c]
mov dword [ebp - 0x1120], ebx
cmp esi, ebx
je 0x4fc328
lea ebx, [ebx]
mov eax, dword [esi + 0x14]
mov ecx, 0x54fd10
add eax, 8
jmp 0x4fc450
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fc470
test dl, dl
je 0x4fc46c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fc470
add eax, 2
add ecx, 2
test dl, dl
jne 0x4fc450
xor eax, eax
jmp 0x4fc475
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4fc485
mov esi, dword [esi + 0x20]
cmp esi, ebx
jne 0x4fc440
jmp 0x4fc328
mov eax, dword [esi + 0x18]
add eax, 8
je 0x4fc328
mov esi, dword [ebx + 0x20]
cmp esi, ebx
je 0x4fc328
lea esp, [esp]
mov eax, dword [esi + 0x14]
mov ecx, 0x54fd18
add eax, 8
jmp 0x4fc4b0
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fc4d0
test dl, dl
je 0x4fc4cc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fc4d0
add eax, 2
add ecx, 2
test dl, dl
jne 0x4fc4b0
xor eax, eax
jmp 0x4fc4d5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4fc4e5
mov esi, dword [esi + 0x20]
cmp esi, ebx
jne 0x4fc4a0
jmp 0x4fc328
mov eax, dword [esi + 0x18]
add eax, 8
je 0x4fc328
mov ecx, dword [0x57c394]
mov edi, dword [ebp - 0x111c]
mov dword [edi + 8], ecx
mov edx, dword [0x57c398]
lea ebx, [edi + 8]
mov dword [ebx + 4], edx
mov eax, dword [0x57c39c]
mov dword [ebx + 8], eax
mov ecx, dword [0x57c394]
add edi, 0x14
mov dword [edi], ecx
mov edx, dword [0x57c398]
mov dword [edi + 4], edx
mov eax, dword [0x57c39c]
mov dword [edi + 8], eax
mov eax, dword [ebp - 0x1120]
mov esi, dword [eax + 0x20]
cmp esi, eax
je 0x4fc584
lea ecx, [ecx]
mov eax, dword [esi + 0x14]
mov ecx, 0x54fd28
add eax, 8
jmp 0x4fc550
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fc570
test dl, dl
je 0x4fc56c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fc570
add eax, 2
add ecx, 2
test dl, dl
jne 0x4fc550
xor eax, eax
jmp 0x4fc575
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4fc5e0
mov esi, dword [esi + 0x20]
cmp esi, dword [ebp - 0x1120]
jne 0x4fc540
xor eax, eax
mov ecx, dword [ebp - 0x111c]
lea edx, [ecx + 0x10]
push edx
add ecx, 0xc
push ecx
push ebx
push 0x54fd1c
push eax
call dword [sym.imp.MSVCR100.dll_sscanf]
mov eax, dword [ebp - 0x1120]
mov esi, dword [eax + 0x20]
add esp, 0x14
cmp esi, eax
je 0x4fc5f8
mov ebx, eax
mov eax, dword [esi + 0x14]
mov ecx, 0x54fd3c
add eax, 8
mov edi, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fc5e8
test dl, dl
je 0x4fc5dc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fc5e8
add eax, 2
add ecx, 2
test dl, dl
jne 0x4fc5c0
xor eax, eax
jmp 0x4fc5ed
mov eax, dword [esi + 0x18]
add eax, 8
jmp 0x4fc586
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4fc61d
mov esi, dword [esi + 0x20]
cmp esi, ebx
jne 0x4fc5b3
xor eax, eax
mov ecx, dword [ebp - 0x111c]
lea edx, [ecx + 0x1c]
push edx
add ecx, 0x18
push ecx
push edi
push str._f__f__f
push eax
call dword [sym.imp.MSVCR100.dll_sscanf]
add esp, 0x14
jmp 0x4fc364
mov eax, dword [esi + 0x18]
add eax, 8
jmp 0x4fc5fa
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4fc654
mov esi, dword [esi + 0x28]
test esi, esi
jne 0x4fc375
xor eax, eax
lea edi, [eax + 0x2c]
mov esi, 0x54fd48
call fcn.00425090
test eax, eax
je 0x4fc6c0
mov eax, dword [eax + 0x18]
add eax, 8
jmp 0x4fc6c2
mov edx, dword [esi]
mov eax, dword [edx + 0x18]
mov ecx, esi
call eax
test eax, eax
jne 0x4fc6b2
mov esi, dword [esi + 0x28]
test esi, esi
je 0x4fc639
jmp 0x4fc670
mov eax, dword [esi + 0x20]
mov ecx, str.size
add eax, 8
jmp 0x4fc680
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fc6a0
test dl, dl
je 0x4fc69c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fc6a0
add eax, 2
add ecx, 2
test dl, dl
jne 0x4fc680
xor eax, eax
jmp 0x4fc6a5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4fc654
mov esi, dword [esi + 0x28]
test esi, esi
jne 0x4fc670
jmp 0x4fc639
mov edx, dword [esi]
mov eax, dword [edx + 0x18]
mov ecx, esi
call eax
jmp 0x4fc63b
xor eax, eax
push eax
call dword [sym.imp.MSVCR100.dll_atoi]
mov ebx, dword [ebp - 0x111c]
add esp, 4
mov esi, 0x54fd54
mov byte [ebx + 0x3a], al
call fcn.00425090
test eax, eax
je 0x4fc6eb
mov eax, dword [eax + 0x18]
add eax, 8
jmp 0x4fc6ed
xor eax, eax
push eax
call dword [sym.imp.MSVCR100.dll_atoi]
add esp, 4
mov esi, 0x54fd60
mov byte [ebx + 0x3b], al
call fcn.00425090
test eax, eax
je 0x4fc710
mov eax, dword [eax + 0x18]
add eax, 8
jmp 0x4fc712
xor eax, eax
push eax
call dword [sym.imp.MSVCR100.dll_atoi]
add esp, 4
mov esi, 0x54fd68
mov byte [ebx + 0x3e], al
call fcn.00425090
test eax, eax
je 0x4fc735
mov eax, dword [eax + 0x18]
add eax, 8
jmp 0x4fc737
xor eax, eax
push eax
call dword [sym.imp.MSVCR100.dll_atoi]
add esp, 4
mov esi, 0x54fd70
mov dword [ebp - 0x1114], eax
mov byte [ebx + 0x3f], al
call fcn.00425090
test eax, eax
je 0x4fc7c9
mov eax, dword [eax + 0x18]
add eax, 8
je 0x4fc7c9
mov esi, 0x54fd78
call fcn.00425090
test eax, eax
je 0x4fc7c9
mov eax, dword [eax + 0x18]
add eax, 8
je 0x4fc7c9
mov esi, str.midMax
call fcn.00425090
test eax, eax
je 0x4fc78c
mov eax, dword [eax + 0x18]
add eax, 8
jmp 0x4fc78e
xor eax, eax
push eax
call dword [sym.imp.MSVCR100.dll_atoi]
add esp, 4
mov esi, str.midMin
mov byte [ebx + 0x3d], al
call fcn.00425090
test eax, eax
je 0x4fc7bb
mov eax, dword [eax + 0x18]
add eax, 8
push eax
call dword [sym.imp.MSVCR100.dll_atoi]
add esp, 4
jmp 0x4fc7ed
xor eax, eax
push eax
call dword [sym.imp.MSVCR100.dll_atoi]
add esp, 4
jmp 0x4fc7ed
movzx eax, byte [ebp - 0x1114]
movzx ecx, byte [ebx + 0x3b]
add eax, ecx
cdq
sub eax, edx
movzx edx, byte [ebx + 0x3e]
sar eax, 1
mov byte [ebx + 0x3d], al
movzx eax, byte [ebx + 0x3a]
add eax, edx
cdq
sub eax, edx
sar eax, 1
mov byte [ebx + 0x3c], al
mov eax, dword [ebp - 0x1124]
mov esi, str.cycleX
call fcn.00422b30
mov edi, eax
test edi, edi
je 0x4fc829
mov eax, dword [edi]
mov edx, dword [eax + 0x18]
mov ecx, edi
call edx
test eax, eax
jne 0x4fc8f0
mov esi, str.cycleX
mov eax, edi
call fcn.00422b80
mov edi, eax
test edi, edi
jne 0x4fc806
xor edx, edx
xor ecx, ecx
mov dword [ebx + 0x40], edx
mov dword [ebx + 0x44], ecx
mov eax, dword [ebp - 0x1124]
mov esi, str.cycleY
call fcn.00422b30
mov edi, eax
test edi, edi
je 0x4fc873
lea esp, [esp]
mov eax, dword [edi]
mov edx, dword [eax + 0x18]
mov ecx, edi
call edx
test eax, eax
jne 0x4fca40
mov esi, str.cycleY
mov eax, edi
call fcn.00422b80
mov edi, eax
test edi, edi
jne 0x4fc850
xor edx, edx
xor ecx, ecx
mov dword [ebx + 0x48], edx
mov dword [ebx + 0x4c], ecx
fldz
mov eax, dword [ebp - 0x1124]
fst dword [ebx + 0x6c]
mov esi, str.rotateCycle
fst dword [ebx + 0x70]
fst dword [ebx + 0x74]
fst dword [ebx + 0x78]
fst dword [ebx + 0x7c]
fst dword [ebx + 0x80]
fst dword [ebx + 0x84]
fst dword [ebx + 0x88]
fstp dword [ebx + 0x8c]
fld1
fstp dword [ebx + 0x90]
call fcn.00422b30
mov edi, eax
test edi, edi
je 0x4fcf4f
mov eax, dword [edi]
mov edx, dword [eax + 0x18]
mov ecx, edi
call edx
test eax, eax
jne 0x4fcb90
mov esi, str.rotateCycle
mov eax, edi
call fcn.00422b80
mov edi, eax
test edi, edi
jne 0x4fc8c8
jmp 0x4fcf4f
mov eax, dword [edi]
mov edx, dword [eax + 0x18]
mov ecx, edi
call edx
test eax, eax
je 0x4fc829
lea edi, [eax + 0x2c]
mov esi, 0x54fd98
call fcn.00425090
test eax, eax
je 0x4fc829
mov eax, dword [eax + 0x18]
add eax, 8
je 0x4fc829
mov esi, 0x54fda4
call fcn.00425090
test eax, eax
je 0x4fc829
mov eax, dword [eax + 0x18]
add eax, 8
je 0x4fc829
mov esi, 0x54fdb0
call fcn.00425090
test eax, eax
je 0x4fc956
mov eax, dword [eax + 0x18]
add eax, 8
jmp 0x4fc958
xor eax, eax
push eax
call dword [sym.imp.MSVCR100.dll_atoi]
add esp, 4
mov esi, 0x54fdbc
mov word [ebx + 0x40], ax
call fcn.00425090
test eax, eax
je 0x4fc97c
mov eax, dword [eax + 0x18]
add eax, 8
jmp 0x4fc97e
xor eax, eax
push eax
call dword [sym.imp.MSVCR100.dll_atoi]
add esp, 4
mov esi, 0x54fdc8
mov dword [ebp - 0x1114], eax
mov word [ebx + 0x42], ax
call fcn.00425090
test eax, eax
je 0x4fca28
mov eax, dword [eax + 0x18]
add eax, 8
je 0x4fca28
mov esi, 0x54fdd0
call fcn.00425090
test eax, eax
je 0x4fca28
mov eax, dword [eax + 0x18]
add eax, 8
je 0x4fca28
mov esi, 0x54fdd8
call fcn.00425090
test eax, eax
je 0x4fc9dc
mov eax, dword [eax + 0x18]
add eax, 8
jmp 0x4fc9de
xor eax, eax
push eax
call dword [sym.imp.MSVCR100.dll_atoi]
add esp, 4
mov esi, 0x54fde0
mov word [ebx + 0x44], ax
call fcn.00425090
test eax, eax
je 0x4fca13
mov eax, dword [eax + 0x18]
add eax, 8
push eax
call dword [sym.imp.MSVCR100.dll_atoi]
add esp, 4
mov word [ebx + 0x46], ax
jmp 0x4fc833
xor eax, eax
push eax
call dword [sym.imp.MSVCR100.dll_atoi]
add esp, 4
mov word [ebx + 0x46], ax
jmp 0x4fc833
mov ax, word [ebx + 0x40]
mov cx, word [ebp - 0x1114]
mov word [ebx + 0x44], ax
mov word [ebx + 0x46], cx
jmp 0x4fc833
mov eax, dword [edi]
mov edx, dword [eax + 0x18]
mov ecx, edi
call edx
test eax, eax
je 0x4fc873
lea edi, [eax + 0x2c]
mov esi, 0x54fdf0
call fcn.00425090
test eax, eax
je 0x4fc873
mov eax, dword [eax + 0x18]
add eax, 8
je 0x4fc873
mov esi, 0x54fdfc
call fcn.00425090
test eax, eax
je 0x4fc873
mov eax, dword [eax + 0x18]
add eax, 8
je 0x4fc873
mov esi, 0x54fe08
call fcn.00425090
test eax, eax
je 0x4fcaa6
mov eax, dword [eax + 0x18]
add eax, 8
jmp 0x4fcaa8
xor eax, eax
push eax
call dword [sym.imp.MSVCR100.dll_atoi]
add esp, 4
mov esi, 0x54fe14
mov word [ebx + 0x48], ax
call fcn.00425090
test eax, eax
je 0x4fcacc
mov eax, dword [eax + 0x18]
add eax, 8
jmp 0x4fcace
xor eax, eax
push eax
call dword [sym.imp.MSVCR100.dll_atoi]
add esp, 4
mov esi, 0x54fe20
mov dword [ebp - 0x1114], eax
mov word [ebx + 0x4a], ax
call fcn.00425090
test eax, eax
je 0x4fcb78
mov eax, dword [eax + 0x18]
add eax, 8
je 0x4fcb78
mov esi, 0x54fe28
call fcn.00425090
test eax, eax
je 0x4fcb78
mov eax, dword [eax + 0x18]
add eax, 8
je 0x4fcb78
mov esi, 0x54fe30
call fcn.00425090
test eax, eax
je 0x4fcb2c
mov eax, dword [eax + 0x18]
add eax, 8
jmp 0x4fcb2e
xor eax, eax
push eax
call dword [sym.imp.MSVCR100.dll_atoi]
add esp, 4
mov esi, 0x54fe38
mov word [ebx + 0x4c], ax
call fcn.00425090
test eax, eax
je 0x4fcb63
mov eax, dword [eax + 0x18]
add eax, 8
push eax
call dword [sym.imp.MSVCR100.dll_atoi]
add esp, 4
mov word [ebx + 0x4e], ax
jmp 0x4fc87d
xor eax, eax
push eax
call dword [sym.imp.MSVCR100.dll_atoi]
add esp, 4
mov word [ebx + 0x4e], ax
jmp 0x4fc87d
mov ax, word [ebx + 0x48]
mov cx, word [ebp - 0x1114]
mov word [ebx + 0x4c], ax
mov word [ebx + 0x4e], cx
jmp 0x4fc87d
mov eax, dword [edi]
mov edx, dword [eax + 0x18]
mov ecx, edi
call edx
test eax, eax
je 0x4fcf4f
lea edi, [eax + 0x2c]
mov esi, 0x54fe4c
call fcn.00425090
test eax, eax
je 0x4fcbdc
mov eax, dword [eax + 0x18]
lea ecx, [ebp - 0x1258]
push ecx
add eax, 8
push 0x5537ac
push eax
call dword [sym.imp.MSVCR100.dll_sscanf_s]
add esp, 0xc
cmp eax, 1
jne 0x4fcbdc
fld qword [ebp - 0x1258]
fstp dword [ebx + 0x6c]
fld dword [ebx + 0x6c]
mov esi, 0x54fe54
fstp dword [ebx + 0x70]
call fcn.00425090
test eax, eax
je 0x4fcc1a
mov eax, dword [eax + 0x18]
lea edx, [ebp - 0x11c8]
push edx
add eax, 8
push 0x5537ac
push eax
call dword [sym.imp.MSVCR100.dll_sscanf_s]
add esp, 0xc
cmp eax, 1
jne 0x4fcc1a
fld qword [ebp - 0x11c8]
fstp dword [ebx + 0x6c]
mov esi, 0x54fe60
call fcn.00425090
test eax, eax
je 0x4fcc52
mov eax, dword [eax + 0x18]
lea ecx, [ebp - 0x1218]
push ecx
add eax, 8
push 0x5537ac
push eax
call dword [sym.imp.MSVCR100.dll_sscanf_s]
add esp, 0xc
cmp eax, 1
jne 0x4fcc52
fld qword [ebp - 0x1218]
fstp dword [ebx + 0x70]
fld dword [ebx + 0x6c]
mov esi, 0x54fe6c
fstp dword [ebx + 0x74]
fld dword [ebx + 0x70]
fstp dword [ebx + 0x78]
call fcn.00425090
test eax, eax
je 0x4fcc96
mov eax, dword [eax + 0x18]
lea edx, [ebp - 0x11d8]
push edx
add eax, 8
push 0x5537ac
push eax
call dword [sym.imp.MSVCR100.dll_sscanf_s]
add esp, 0xc
cmp eax, 1
jne 0x4fcc96
fld qword [ebp - 0x11d8]
fstp dword [ebx + 0x74]
fld dword [ebx + 0x74]
mov esi, 0x54fe70
fstp dword [ebx + 0x78]
call fcn.00425090
test eax, eax
je 0x4fccd4
mov eax, dword [eax + 0x18]
lea ecx, [ebp - 0x1248]
push ecx
add eax, 8
push 0x5537ac
push eax
call dword [sym.imp.MSVCR100.dll_sscanf_s]
add esp, 0xc
cmp eax, 1
jne 0x4fccd4
fld qword [ebp - 0x1248]
fstp dword [ebx + 0x74]
mov esi, 0x54fe78
call fcn.00425090
test eax, eax
je 0x4fcd0c
mov eax, dword [eax + 0x18]
lea edx, [ebp - 0x11e8]
push edx
add eax, 8
push 0x5537ac
push eax
call dword [sym.imp.MSVCR100.dll_sscanf_s]
add esp, 0xc
cmp eax, 1
jne 0x4fcd0c
fld qword [ebp - 0x11e8]
fstp dword [ebx + 0x78]
mov esi, str.speedStart
call fcn.00425090
test eax, eax
je 0x4fcd44
mov eax, dword [eax + 0x18]
lea ecx, [ebp - 0x1230]
push ecx
add eax, 8
push 0x5537ac
push eax
call dword [sym.imp.MSVCR100.dll_sscanf_s]
add esp, 0xc
cmp eax, 1
jne 0x4fcd44
fld qword [ebp - 0x1230]
fstp dword [ebx + 0x7c]
fld dword [ebx + 0x7c]
mov esi, str.speedStartMin
fstp dword [ebx + 0x80]
call fcn.00425090
test eax, eax
je 0x4fcd85
mov eax, dword [eax + 0x18]
lea edx, [ebp - 0x11f8]
push edx
add eax, 8
push 0x5537ac
push eax
call dword [sym.imp.MSVCR100.dll_sscanf_s]
add esp, 0xc
cmp eax, 1
jne 0x4fcd85
fld qword [ebp - 0x11f8]
fstp dword [ebx + 0x7c]
mov esi, str.speedStartMax
call fcn.00425090
test eax, eax
je 0x4fcdc0
mov eax, dword [eax + 0x18]
lea ecx, [ebp - 0x1250]
push ecx
add eax, 8
push 0x5537ac
push eax
call dword [sym.imp.MSVCR100.dll_sscanf_s]
add esp, 0xc
cmp eax, 1
jne 0x4fcdc0
fld qword [ebp - 0x1250]
fstp dword [ebx + 0x80]
fld dword [ebx + 0x7c]
mov esi, str.speedEnd
fstp dword [ebx + 0x84]
fld dword [ebx + 0x80]
fstp dword [ebx + 0x88]
call fcn.00425090
test eax, eax
je 0x4fce10
mov eax, dword [eax + 0x18]
lea edx, [ebp - 0x1208]
push edx
add eax, 8
push 0x5537ac
push eax
call dword [sym.imp.MSVCR100.dll_sscanf_s]
add esp, 0xc
cmp eax, 1
jne 0x4fce10
fld qword [ebp - 0x1208]
fstp dword [ebx + 0x84]
fld dword [ebx + 0x84]
mov esi, str.speedEndMin
fstp dword [ebx + 0x88]
call fcn.00425090
test eax, eax
je 0x4fce57
mov eax, dword [eax + 0x18]
lea ecx, [ebp - 0x1240]
push ecx
add eax, 8
push 0x5537ac
push eax
call dword [sym.imp.MSVCR100.dll_sscanf_s]
add esp, 0xc
cmp eax, 1
jne 0x4fce57
fld qword [ebp - 0x1240]
fstp dword [ebx + 0x84]
mov esi, str.speedEndMax
call fcn.00425090
test eax, eax
je 0x4fce92
mov eax, dword [eax + 0x18]
lea edx, [ebp - 0x11c0]
push edx
add eax, 8
push 0x5537ac
push eax
call dword [sym.imp.MSVCR100.dll_sscanf_s]
add esp, 0xc
cmp eax, 1
jne 0x4fce92
fld qword [ebp - 0x11c0]
fstp dword [ebx + 0x88]
mov esi, str.offset
call fcn.00425090
test eax, eax
je 0x4fcecd
mov eax, dword [eax + 0x18]
lea ecx, [ebp - 0x11d0]
push ecx
add eax, 8
push 0x5537ac
push eax
call dword [sym.imp.MSVCR100.dll_sscanf_s]
add esp, 0xc
cmp eax, 1
jne 0x4fcecd
fld qword [ebp - 0x11d0]
fstp dword [ebx + 0x8c]
fld dword [ebx + 0x8c]
mov esi, str.offsetMin
fstp dword [ebx + 0x90]
call fcn.00425090
test eax, eax
je 0x4fcf14
mov eax, dword [eax + 0x18]
lea edx, [ebp - 0x11e0]
push edx
add eax, 8
push 0x5537ac
push eax
call dword [sym.imp.MSVCR100.dll_sscanf_s]
add esp, 0xc
cmp eax, 1
jne 0x4fcf14
fld qword [ebp - 0x11e0]
fstp dword [ebx + 0x8c]
mov esi, str.offsetMax
call fcn.00425090
test eax, eax
je 0x4fcf4f
mov eax, dword [eax + 0x18]
lea ecx, [ebp - 0x11f0]
push ecx
add eax, 8
push 0x5537ac
push eax
call dword [sym.imp.MSVCR100.dll_sscanf_s]
add esp, 0xc
cmp eax, 1
jne 0x4fcf4f
fld qword [ebp - 0x11f0]
fstp dword [ebx + 0x90]
mov eax, dword [ebp - 0x1124]
mov esi, str.angle
call fcn.00422b30
mov edi, eax
test edi, edi
je 0x4fcf88
mov edx, dword [edi]
mov eax, dword [edx + 0x18]
mov ecx, edi
call eax
test eax, eax
jne 0x4fd028
mov esi, str.angle
mov eax, edi
call fcn.00422b80
mov edi, eax
test edi, edi
jne 0x4fcf65
xor eax, eax
mov dword [ebx + 0x5c], eax
mov dword [ebx + 0x60], eax
mov eax, dword [ebp - 0x1124]
mov esi, str.spin
call fcn.00422b30
mov edi, eax
test edi, edi
je 0x4fcfc9
mov edx, dword [edi]
mov eax, dword [edx + 0x18]
mov ecx, edi
call eax
test eax, eax
jne 0x4fd0d1
mov esi, str.spin
mov eax, edi
call fcn.00422b80
mov edi, eax
test edi, edi
jne 0x4fcfa6
xor eax, eax
xor edx, edx
mov dword [ebx + 0x50], eax
mov dword [ebx + 0x54], edx
fldz
mov eax, dword [ebp - 0x111c]
mov ebx, dword [ebp - 0x1124]
fst dword [eax + 0x64]
fstp dword [eax + 0x68]
mov esi, str.gridLock
mov eax, ebx
call fcn.00422b30
mov edi, eax
test edi, edi
je 0x4fd2c2
lea ecx, [ecx]
mov edx, dword [edi]
mov eax, dword [edx + 0x18]
mov ecx, edi
call eax
test eax, eax
jne 0x4fd232
mov esi, str.gridLock
mov eax, edi
call fcn.00422b80
mov edi, eax
test edi, edi
jne 0x4fd000
jmp 0x4fd2c2
mov edx, dword [edi]
mov eax, dword [edx + 0x18]
mov ecx, edi
call eax
test eax, eax
je 0x4fcf88
lea edi, [eax + 0x2c]
mov esi, 0x54fef8
call fcn.00425090
test eax, eax
je 0x4fcf88
mov eax, dword [eax + 0x18]
add eax, 8
je 0x4fcf88
mov esi, 0x54fefc
call fcn.00425090
test eax, eax
je 0x4fcf88
mov eax, dword [eax + 0x18]
add eax, 8
je 0x4fcf88
mov esi, 0x54ff00
call fcn.00425090
test eax, eax
je 0x4fd08e
mov eax, dword [eax + 0x18]
add eax, 8
jmp 0x4fd090
xor eax, eax
push eax
call dword [sym.imp.MSVCR100.dll_atoi]
add esp, 4
mov esi, 0x54ff04
mov dword [ebx + 0x5c], eax
call fcn.00425090
test eax, eax
je 0x4fd0c0
mov eax, dword [eax + 0x18]
add eax, 8
push eax
call dword [sym.imp.MSVCR100.dll_atoi]
add esp, 4
jmp 0x4fcf8d
xor eax, eax
push eax
call dword [sym.imp.MSVCR100.dll_atoi]
add esp, 4
jmp 0x4fcf8d
mov edx, dword [edi]
mov eax, dword [edx + 0x18]
mov ecx, edi
call eax
test eax, eax
je 0x4fcfc9
lea edi, [eax + 0x2c]
mov esi, 0x54ff10
call fcn.00425090
test eax, eax
je 0x4fcfc9
mov eax, dword [eax + 0x18]
add eax, 8
je 0x4fcfc9
mov esi, 0x54ff1c
call fcn.00425090
test eax, eax
je 0x4fcfc9
mov eax, dword [eax + 0x18]
add eax, 8
je 0x4fcfc9
mov esi, str.startMin
call fcn.00425090
test eax, eax
je 0x4fd137
mov eax, dword [eax + 0x18]
add eax, 8
jmp 0x4fd139
xor eax, eax
push eax
call dword [sym.imp.MSVCR100.dll_atoi]
add esp, 4
mov esi, str.startMax
mov word [ebx + 0x50], ax
call fcn.00425090
test eax, eax
je 0x4fd15d
mov eax, dword [eax + 0x18]
add eax, 8
jmp 0x4fd15f
xor eax, eax
push eax
call dword [sym.imp.MSVCR100.dll_atoi]
mov ecx, dword [ebp - 0x111c]
mov ebx, eax
add esp, 4
mov esi, 0x54ff40
mov word [ecx + 0x52], bx
call fcn.00425090
test eax, eax
je 0x4fd21b
mov eax, dword [eax + 0x18]
add eax, 8
je 0x4fd21b
mov esi, 0x54ff48
call fcn.00425090
test eax, eax
je 0x4fd21b
mov eax, dword [eax + 0x18]
add eax, 8
je 0x4fd21b
mov esi, str.endMin
call fcn.00425090
test eax, eax
je 0x4fd1c3
mov eax, dword [eax + 0x18]
add eax, 8
jmp 0x4fd1c5
xor eax, eax
mov ebx, dword [sym.imp.MSVCR100.dll_atoi]
push eax
call ebx
mov edx, dword [ebp - 0x111c]
add esp, 4
mov esi, str.endMax
mov word [edx + 0x54], ax
call fcn.00425090
test eax, eax
je 0x4fd204
mov eax, dword [eax + 0x18]
add eax, 8
push eax
call ebx
mov ecx, dword [ebp - 0x111c]
add esp, 4
mov word [ecx + 0x56], ax
jmp 0x4fcfd3
xor eax, eax
push eax
call ebx
mov ecx, dword [ebp - 0x111c]
add esp, 4
mov word [ecx + 0x56], ax
jmp 0x4fcfd3
mov eax, dword [ebp - 0x111c]
mov dx, word [eax + 0x50]
mov word [eax + 0x54], dx
mov word [eax + 0x56], bx
jmp 0x4fcfd3
mov edx, dword [edi]
mov eax, dword [edx + 0x18]
mov ecx, edi
call eax
test eax, eax
je 0x4fd2c2
lea edi, [eax + 0x2c]
mov esi, 0x54ff6c
call fcn.00425090
test eax, eax
je 0x4fd284
mov eax, dword [eax + 0x18]
lea ecx, [ebp - 0x1200]
push ecx
add eax, 8
push 0x5537ac
push eax
call dword [sym.imp.MSVCR100.dll_sscanf_s]
add esp, 0xc
cmp eax, 1
jne 0x4fd284
fld qword [ebp - 0x1200]
mov edx, dword [ebp - 0x111c]
fstp dword [edx + 0x64]
mov esi, 0x54ff70
call fcn.00425090
test eax, eax
je 0x4fd2c2
mov eax, dword [eax + 0x18]
lea ecx, [ebp - 0x1210]
push ecx
add eax, 8
push 0x5537ac
push eax
call dword [sym.imp.MSVCR100.dll_sscanf_s]
add esp, 0xc
cmp eax, 1
jne 0x4fd2c2
fld qword [ebp - 0x1210]
mov edx, dword [ebp - 0x111c]
fstp dword [edx + 0x68]
mov esi, str.SourceBlend
mov eax, ebx
call fcn.00422b30
mov edi, eax
test edi, edi
je 0x4fd2f3
mov eax, dword [edi]
mov edx, dword [eax + 0x18]
mov ecx, edi
call edx
test eax, eax
jne 0x4fd30f
mov esi, str.SourceBlend
mov eax, edi
call fcn.00422b80
mov edi, eax
test edi, edi
jne 0x4fd2d4
xor eax, eax
mov ecx, dword [eax + 0x18]
test ecx, ecx
je 0x4fd31a
mov eax, dword [ecx]
mov edx, dword [eax + 0x30]
call edx
test eax, eax
je 0x4fd31a
mov eax, dword [eax + 0x20]
add eax, 8
jmp 0x4fd31c
mov eax, dword [edi]
mov edx, dword [eax + 0x18]
mov ecx, edi
call edx
jmp 0x4fd2f5
xor eax, eax
mov ecx, str.SourceAlpha
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fd341
test dl, dl
je 0x4fd33d
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fd341
add eax, 2
add ecx, 2
test dl, dl
jne 0x4fd321
xor eax, eax
jmp 0x4fd346
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4fd359
mov ecx, dword [ebp - 0x111c]
mov eax, 5
mov word [ecx + 0x58], ax
mov esi, str.DestinationBlend
mov eax, ebx
call fcn.00422b30
mov edi, eax
test edi, edi
je 0x4fd38f
jmp 0x4fd370
mov edx, dword [edi]
mov eax, dword [edx + 0x18]
mov ecx, edi
call eax
test eax, eax
jne 0x4fd3ab
mov esi, str.DestinationBlend
mov eax, edi
call fcn.00422b80
mov edi, eax
test edi, edi
jne 0x4fd370
xor eax, eax
mov ecx, dword [eax + 0x18]
test ecx, ecx
je 0x4fd3b6
mov edx, dword [ecx]
mov eax, dword [edx + 0x30]
call eax
test eax, eax
je 0x4fd3b6
mov esi, dword [eax + 0x20]
add esi, 8
jmp 0x4fd3b8
mov edx, dword [edi]
mov eax, dword [edx + 0x18]
mov ecx, edi
call eax
jmp 0x4fd391
xor esi, esi
mov edx, str.InverseSourceAlpha
mov ecx, esi
nop
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x4fd3e0
test al, al
je 0x4fd3dc
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x4fd3e0
add ecx, 2
add edx, 2
test al, al
jne 0x4fd3c0
xor eax, eax
jmp 0x4fd3e5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4fd3fa
mov edx, dword [ebp - 0x111c]
mov ecx, 6
mov word [edx + 0x5a], cx
jmp 0x4fd439
mov ecx, 0x54ffb4
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4fd421
test dl, dl
je 0x4fd41d
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4fd421
add eax, 2
add ecx, 2
test dl, dl
jne 0x4fd401
xor eax, eax
jmp 0x4fd426
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4fd439
mov ecx, dword [ebp - 0x111c]
mov eax, 2
mov word [ecx + 0x5a], ax
mov ecx, str.particleTemplate
mov eax, ebx
call fcn.00422bd0
mov ecx, dword [ebp - 0x113c]
inc dword [ecx + 0x20]
mov dword [ebp - 0x1124], eax
test eax, eax
jne 0x4fa8ad
mov eax, ecx
mov dword [eax + 0x28], 0
mov eax, dword [eax + 0x20]
imul eax, eax, 0xb8
mov dword [ebp - 0x1118], eax
mov eax, dword [ebp - 0x1168]
mov esi, 0x54ffcc
call fcn.00422b30
mov ebx, eax
test ebx, ebx
je 0x4fd4af
lea ebx, [ebx]
mov edx, dword [ebx]
mov eax, dword [edx + 0x18]
mov ecx, ebx
call eax
test eax, eax
jne 0x4fd503
mov esi, 0x54ffcc
mov eax, ebx
call fcn.00422b80
mov ebx, eax
test ebx, ebx
jne 0x4fd490
xor eax, eax
mov dword [ebp - 0x1124], eax
test eax, eax
je 0x4fd8e7
nop
mov eax, dword [ebp - 0x1140]
mov ebx, eax
push 0x4c
add eax, 0x4c
push 0
push ebx
mov dword [ebp - 0x1114], ebx
mov dword [ebp - 0x1140], eax
call sub.MSVCR100.dll_memset
mov edi, dword [ebp - 0x1124]
add esp, 0xc
add edi, 0x2c
mov esi, 0x54ffd4
call fcn.00425090
test eax, eax
je 0x4fd50e
mov eax, dword [eax + 0x18]
add eax, 8
jmp 0x4fd510
mov edx, dword [ebx]
mov eax, dword [edx + 0x18]
mov ecx, ebx
call eax
jmp 0x4fd4b1
xor eax, eax
mov ecx, eax
call fcn.00419140
mov esi, 0x54ffdc
mov dword [ebx + 0x40], eax
call fcn.00425090
test eax, eax
je 0x4fd530
mov eax, dword [eax + 0x18]
add eax, 8
jmp 0x4fd532
xor eax, eax
mov edx, ebx
sub edx, eax
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x4fd536
mov eax, dword [ebp - 0x1124]
mov esi, str.life
call fcn.00422b30
mov edi, eax
test edi, edi
je 0x4fd575
mov edx, dword [edi]
mov eax, dword [edx + 0x18]
mov ecx, edi
call eax
test eax, eax
jne 0x4fd591
mov esi, str.life
mov eax, edi
call fcn.00422b80
mov edi, eax
test edi, edi
jne 0x4fd556
xor eax, eax
mov ecx, dword [eax + 0x18]
test ecx, ecx
je 0x4fd59c
mov edx, dword [ecx]
mov eax, dword [edx + 0x30]
call eax
test eax, eax
je 0x4fd59c
mov eax, dword [eax + 0x20]
add eax, 8
jmp 0x4fd59e
mov edx, dword [edi]
mov eax, dword [edx + 0x18]
mov ecx, edi
call eax
jmp 0x4fd577
xor eax, eax
push eax
call dword [sym.imp.MSVCR100.dll_atof]
fdiv qword [0x554cb0]
mov eax, dword [ebp - 0x1124]
add esp, 4
mov esi, 0x54ffec
mov dword [ebp - 0x111c], 0
fstp dword [ebx + 0x44]
call fcn.00422b30
mov edi, eax
test edi, edi
je 0x4fd5f0
mov edx, dword [edi]
mov eax, dword [edx + 0x18]
mov ecx, edi
call eax
test eax, eax
jne 0x4fd63d
mov esi, 0x54ffec
mov eax, edi
call fcn.00422b80
mov edi, eax
test edi, edi
jne 0x4fd5d1
xor eax, eax
mov dword [ebp - 0x1120], eax
test eax, eax
je 0x4fd8b1
mov eax, dword [ebp - 0x1140]
push 0x4c
mov ebx, eax
add eax, 0x30
push 0
push ebx
mov dword [ebp - 0x1140], eax
call sub.MSVCR100.dll_memset
mov edi, dword [ebp - 0x1120]
add esp, 0xc
add edi, 0x2c
mov esi, 0x54fff8
call fcn.00425090
test eax, eax
je 0x4fd648
mov eax, dword [eax + 0x18]
add eax, 8
jmp 0x4fd64a
mov edx, dword [edi]
mov eax, dword [edx + 0x18]
mov ecx, edi
call eax
jmp 0x4fd5f2
xor eax, eax
mov ecx, eax
call fcn.00419140
mov edx, dword [ebp - 0x113c]
xor ecx, ecx
cmp dword [edx + 0x20], ecx
jle 0x4fd673
mov edi, edi
cmp dword [ebp + ecx*4 - 0x1110], eax
je 0x4fd671
inc ecx
cmp ecx, dword [edx + 0x20]
jl 0x4fd660
jmp 0x4fd673
mov dword [ebx], ecx
mov eax, dword [ebp - 0x1120]
mov esi, str.time
call fcn.00422b30
mov edi, eax
test edi, edi
je 0x4fd6af
lea esp, [esp]
mov edx, dword [edi]
mov eax, dword [edx + 0x18]
mov ecx, edi
call eax
test eax, eax
jne 0x4fd6ca
mov esi, str.time
mov eax, edi
call fcn.00422b80
mov edi, eax
test edi, edi
jne 0x4fd690
xor eax, eax
lea edi, [eax + 0x2c]
mov esi, str.start
call fcn.00425090
test eax, eax
je 0x4fd6d5
mov eax, dword [eax + 0x18]
add eax, 8
jmp 0x4fd6d7
mov edx, dword [edi]
mov eax, dword [edx + 0x18]
mov ecx, edi
call eax
jmp 0x4fd6b1
xor eax, eax
push eax
call dword [sym.imp.MSVCR100.dll_atof]
fstp dword [ebx + 4]
add esp, 4
mov esi, str.stop
call fcn.00425090
test eax, eax
je 0x4fd6fa
mov eax, dword [eax + 0x18]
add eax, 8
jmp 0x4fd6fc
xor eax, eax
push eax
call dword [sym.imp.MSVCR100.dll_atof]
fstp dword [ebx + 8]
mov eax, dword [ebp - 0x1120]
add esp, 4
mov esi, str.particleNumber
call fcn.00422b30
mov edi, eax
test edi, edi
je 0x4fd73f
nop
mov edx, dword [edi]
mov eax, dword [edx + 0x18]
mov ecx, edi
call eax
test eax, eax
jne 0x4fd75a
mov esi, str.particleNumber
mov eax, edi
call fcn.00422b80
mov edi, eax
test edi, edi
jne 0x4fd720
xor eax, eax
lea edi, [eax + 0x2c]
mov esi, str.init
call fcn.00425090
test eax, eax
je 0x4fd765
mov eax, dword [eax + 0x18]
add eax, 8
jmp 0x4fd767
mov edx, dword [edi]
mov eax, dword [edx + 0x18]
mov ecx, edi
call eax
jmp 0x4fd741
xor eax, eax
push eax
call dword [sym.imp.MSVCR100.dll_atoi]
add esp, 4
mov esi, str.perSec
mov byte [ebx + 0xc], al
call fcn.00425090
test eax, eax
je 0x4fd78a
mov eax, dword [eax + 0x18]
add eax, 8
jmp 0x4fd78c
xor eax, eax
push eax
call dword [sym.imp.MSVCR100.dll_atof]
fstp dword [ebx + 0x10]
mov eax, dword [ebp - 0x1120]
add esp, 4
mov esi, str.velocity
call fcn.00422b30
mov edi, eax
test edi, edi
je 0x4fd7cf
nop
mov edx, dword [edi]
mov eax, dword [edx + 0x18]
mov ecx, edi
call eax
test eax, eax
jne 0x4fd7ea
mov esi, str.velocity
mov eax, edi
call fcn.00422b80
mov edi, eax
test edi, edi
jne 0x4fd7b0
xor eax, eax
lea edi, [eax + 0x2c]
mov esi, 0x550050
call fcn.00425090
test eax, eax
je 0x4fd7f5
mov eax, dword [eax + 0x18]
add eax, 8
jmp 0x4fd7f7
mov edx, dword [edi]
mov eax, dword [edx + 0x18]
mov ecx, edi
call eax
jmp 0x4fd7d1
xor eax, eax
lea ecx, [ebp - 0x115c]
push ecx
lea edx, [ebp - 0x1150]
push edx
lea ecx, [ebp - 0x1154]
push ecx
push 0x550044
push eax
call dword [sym.imp.MSVCR100.dll_sscanf]
fild dword [ebp - 0x1154]
add esp, 0x14
mov esi, 0x550060
fstp dword [ebx + 0x18]
fild dword [ebp - 0x1150]
fstp dword [ebx + 0x1c]
fild dword [ebp - 0x115c]
fstp dword [ebx + 0x20]
call fcn.00425090
test eax, eax
je 0x4fd84c
mov eax, dword [eax + 0x18]
add eax, 8
jmp 0x4fd84e
xor eax, eax
lea edx, [ebp - 0x115c]
push edx
lea ecx, [ebp - 0x1150]
push ecx
lea edx, [ebp - 0x1154]
push edx
push str._d__d__d
push eax
call dword [sym.imp.MSVCR100.dll_sscanf]
fild dword [ebp - 0x1154]
mov eax, dword [ebp - 0x1120]
add esp, 0x14
fstp dword [ebx + 0x24]
mov ecx, str.particleSet
fild dword [ebp - 0x1150]
fstp dword [ebx + 0x28]
fild dword [ebp - 0x115c]
fstp dword [ebx + 0x2c]
call fcn.00422bd0
inc dword [ebp - 0x111c]
mov dword [ebp - 0x1120], eax
test eax, eax
jne 0x4fd600
mov eax, dword [ebp - 0x1114]
mov cl, byte [ebp - 0x111c]
mov byte [eax + 0x4b], cl
mov eax, dword [ebp - 0x113c]
inc dword [eax + 0x28]
mov eax, dword [ebp - 0x1124]
mov ecx, str.emitter
call fcn.00422bd0
mov dword [ebp - 0x1124], eax
test eax, eax
jne 0x4fd4c0
mov edi, dword [ebp - 0x1140]
mov ebx, dword [ebp - 0x116c]
sub edi, ebx
lea edx, [edi + 1]
push edx
call fcn.0045f05c
mov esi, dword [ebp - 0x113c]
mov ecx, dword [ebp - 0x1118]
add esp, 4
mov dword [esi + 0x24], eax
mov byte [eax + edi], 0
mov eax, dword [esi + 0x24]
push edi
lea edx, [eax + ecx]
push ebx
push eax
mov dword [esi + 0x2c], edx
call sub.MSVCR100.dll_memcpy
mov ecx, dword [esi + 0x2c]
xor edi, edi
add esp, 0xc
cmp dword [esi + 0x28], edi
jle 0x4fd972
xor edx, edx
cmp byte [ecx + 0x4b], dl
jbe 0x4fd95f
lea eax, [ecx + 0x4c]
lea esp, [esp]
mov ebx, dword [eax]
imul ebx, ebx, 0xb8
add ebx, dword [esi + 0x24]
inc edx
mov dword [eax], ebx
movzx ebx, byte [ecx + 0x4b]
add eax, 0x30
cmp edx, ebx
jl 0x4fd940
mov ebx, dword [ebp - 0x116c]
movzx eax, byte [ecx + 0x4b]
lea eax, [eax + eax*2]
add eax, eax
inc edi
lea ecx, [ecx + eax*8 + 0x4c]
cmp edi, dword [esi + 0x28]
jl 0x4fd932
test ebx, ebx
je 0x4fd9a6
push ebx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete___void__]
jmp 0x4fd9a3
test byte [0x5bd2bc], 1
jne 0x4fd9a6
or dword [0x5bd2bc], 1
push 0x52b6e0
mov dword [0x5bd2b4], 0x553af8
call fcn.0045f177
add esp, 4
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x1274]
mov dword [ebp - method.TiXmlDocument.virtual_0], vtable.TiXmlDocument.0
cmp eax, 0x5b2bb4
je 0x4fd9ce
push eax
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete___void__]
add esp, 4
lea ecx, [ebp - 0x12a8]
call fcn.004229d0
cmp byte [ebp - 0x1129], 0
je 0x4fa490
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0045f06e
mov esp, ebp
pop ebp
ret
lea ecx, [ebp - 0x1164]
push ecx
lea ecx, [ebp - 0x1224]
mov dword [ebp - 0x1164], 0
call dword [sym.imp.MSVCR100.dll_public:_void___thiscall_std::exception::constructor_char_const__const_const__]
push 0x560d4c
lea edx, [ebp - 0x1224]
push edx
mov dword [ebp - method.std::bad_alloc.virtual_0], vtable.std::bad_alloc.0
call sub.MSVCR100.dll__CxxThrowException
int3