Function at 0x41b13e
Capabilities:
Execute anti-debugging instructions

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x168
mov dword [ebp - 4], 0
mov dword [ebp - 8], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x20], 0
push 0x20
call fcn.004487dc
add esp, 4
mov dword [ebp - 0x24], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 8
rep stosd dword es:[edi], eax
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x74], 0
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x84], 0
push 8
call fcn.004487dc
add esp, 4
mov dword [ebp - 0x88], eax
mov edi, eax
mov esi, 0x501676
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov dword [ebp - 0x8c], 0
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x94], 0
push 8
call fcn.004487dc
add esp, 4
mov dword [ebp - 0x98], eax
mov edi, eax
mov esi, 0x501676
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0xa4], 0
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0xac], 0
mov dword [ebp - 0xb0], 0
mov dword [ebp - 0xb4], 0
mov dword [ebp - 0xb8], 0
mov dword [ebp - 0xbc], 0
mov dword [ebp - 0xc0], 0
mov dword [ebp - 0xc4], 0
mov dword [ebp - 0xc8], 0
mov dword [ebp - 0xcc], 0
mov dword [ebp - 0xd0], 0
mov dword [ebp - 0xd4], 0
mov dword [ebp - 0xd8], 0
mov dword [ebp - 0xdc], 0
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xe4], 0
mov dword [ebp - 0xe8], 0
fninit
mov dword [ebp - 4], 0
mov dword [ebp - 8], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x18], 0
push ecx
push edx
rdtsc
mov ecx, 0x17
mul ecx
add eax, 7
mov ecx, 0x1000
sub ecx, 0x10
inc ecx
xor edx, edx
div ecx
add edx, 0x1000
mov eax, edx
pop edx
pop ecx
mov dword [ebp - 4], eax
nop
nop
push ecx
push edx
rdtsc
mov ecx, 0x17
mul ecx
add eax, 7
mov ecx, 0x1000
sub ecx, 0x10
inc ecx
xor edx, edx
div ecx
add edx, 0x1000
mov eax, edx
pop edx
pop ecx
mov dword [ebp - 8], eax
nop
nop
push ecx
push edx
rdtsc
mov ecx, 0x17
mul ecx
add eax, 7
mov ecx, 0x1000
sub ecx, 0x10
inc ecx
xor edx, edx
div ecx
add edx, 0x1000
mov eax, edx
pop edx
pop ecx
mov dword [ebp - 0xc], eax
nop
nop
push ecx
push edx
rdtsc
mov ecx, 0x17
mul ecx
add eax, 7
mov ecx, 0x1000
sub ecx, 0x10
inc ecx
xor edx, edx
div ecx
add edx, 0x1000
mov eax, edx
pop edx
pop ecx
mov dword [ebp - 0x10], eax
nop
nop
push ecx
push edx
rdtsc
mov ecx, 0x17
mul ecx
add eax, 7
mov ecx, 0x1000
sub ecx, 0x10
inc ecx
xor edx, edx
div ecx
add edx, 0x1000
mov eax, edx
pop edx
pop ecx
mov dword [ebp - 0x14], eax
nop
nop
push ecx
push edx
rdtsc
mov ecx, 0x17
mul ecx
add eax, 7
mov ecx, 0x1000
sub ecx, 0x10
inc ecx
xor edx, edx
div ecx
add edx, 0x1000
mov eax, edx
pop edx
pop ecx
mov dword [ebp - 0x18], eax
push 0x80000301
push 0
push dword [0xa27eec]
push 1
mov eax, 4
mov ebx, 0x4b7d80
call fcn.004487e8
add esp, 0x10
mov dword [0xa27f24], 0
mov dword [0xa27f28], 0
mov dword [0xa27f2c], 0
mov dword [0xa27f30], 0
mov byte [0xa27f34], 0
call fcn.00420315
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp + 0xc]
mov dword [0xa27f38], eax
mov ebx, dword [ebp + 8]
mov eax, dword [ebx]
test eax, eax
je 0x41b510
push eax
mov ebx, eax
call fcn.00401873
inc eax
push eax
call fcn.004487dc
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x41b521
push ebx
call fcn.004487e2
add esp, 4
pop eax
mov dword [ebp - 0x20], eax
mov ebx, dword [0xa27f3c]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x41b546
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x41b542
imul eax, dword [ebx]
jmp 0x41b537
mov ecx, eax
test ecx, ecx
je 0x41b586
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x41b561
push ebx
call fcn.004487e2
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x41b575
push ebx
call fcn.004487e2
add esp, 4
pop ebx
call fcn.004487e2
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x41b54c
call fcn.004487e2
add esp, 4
mov eax, 0x501676
mov dword [0xa27f3c], eax
lea eax, [ebp - 0x24]
push eax
call fcn.004203f2
call fcn.00420315
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x44aac0
call fcn.004487d6
add esp, 0x10
mov dword [ebp - 0xf0], eax
mov ebx, dword [ebp - 0x24]
mov dword [ebp - 0xf4], ebx
mov ebx, dword [ebp - 0xf4]
mov ax, word [ebx]
cwde
mov dword [ebp - 0xfc], eax
fild dword [ebp - 0xfc]
fstp qword [ebp - 0xfc]
fld qword [ebp - 0xfc]
fmul qword [0x5018a1]
fstp qword [ebp - 0x104]
push 0x80000601
push dword [ebp - 0x100]
push dword [ebp - 0x104]
push 1
mov ebx, 0x44aac0
call fcn.004487d6
add esp, 0x10
mov dword [ebp - 0x108], eax
mov ebx, dword [ebp - 0x24]
add ebx, 4
mov dword [ebp - 0x10c], ebx
mov ebx, dword [ebp - 0x10c]
mov ax, word [ebx]
cwde
mov dword [ebp - 0x114], eax
fild dword [ebp - 0x114]
fstp qword [ebp - 0x114]
fld qword [ebp - 0x114]
fmul qword [0x5018a1]
fstp qword [ebp - 0x11c]
push 0x80000601
push dword [ebp - 0x118]
push dword [ebp - 0x11c]
push 1
mov ebx, 0x44aac0
call fcn.004487d6
add esp, 0x10
mov dword [ebp - 0x120], eax
mov ebx, dword [ebp - 0x24]
add ebx, 0xc
mov dword [ebp - 0x124], ebx
mov ebx, dword [ebp - 0x124]
mov ax, word [ebx]
cwde
mov dword [ebp - 0x12c], eax
fild dword [ebp - 0x12c]
fstp qword [ebp - 0x12c]
fld qword [ebp - 0x12c]
fmul qword [0x5018a1]
fstp qword [ebp - 0x134]
push 0x80000601
push dword [ebp - 0x130]
push dword [ebp - 0x134]
push 1
mov ebx, 0x44aac0
call fcn.004487d6
add esp, 0x10
mov dword [ebp - 0x138], eax
push dword [ebp - 0x138]
push dword [ebp - 0x120]
push dword [ebp - 0x108]
push dword [ebp - 0xf0]
mov ecx, 4
call fcn.004018de
add esp, 0x10
mov dword [ebp - 0x13c], eax
mov ebx, dword [ebp - 0xf0]
test ebx, ebx
je 0x41b72a
push ebx
call fcn.004487e2
add esp, 4
mov ebx, dword [ebp - 0x108]
test ebx, ebx
je 0x41b73d
push ebx
call fcn.004487e2
add esp, 4
mov ebx, dword [ebp - 0x120]
test ebx, ebx
je 0x41b750
push ebx
call fcn.004487e2
add esp, 4
mov ebx, dword [ebp - 0x138]
test ebx, ebx
je 0x41b763
push ebx
call fcn.004487e2
add esp, 4
mov eax, dword [ebp - 0x13c]
push eax
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x41b77a
push ebx
call fcn.004487e2
add esp, 4
pop eax
mov dword [ebp - 0x28], eax
mov ebx, dword [ebp - 0x24]
add ebx, 0x10
mov dword [ebp - 0xec], ebx
mov ebx, dword [ebp - 0xec]
mov ax, word [ebx]
cwde
mov dword [ebp - 0xf4], eax
fild dword [ebp - 0xf4]
fstp qword [ebp - 0xf4]
fld qword [ebp - 0xf4]
fmul qword [0x5018a1]
fstp qword [ebp - 0xfc]
push 0x80000601
push dword [ebp - 0xf8]
push dword [ebp - 0xfc]
push 1
mov ebx, 0x44aac0
call fcn.004487d6
add esp, 0x10
mov dword [ebp - 0x100], eax
mov ebx, dword [ebp - 0x24]
add ebx, 0x14
mov dword [ebp - 0x104], ebx
mov ebx, dword [ebp - 0x104]
mov ax, word [ebx]
cwde
mov dword [ebp - 0x10c], eax
fild dword [ebp - 0x10c]
fstp qword [ebp - 0x10c]
fld qword [ebp - 0x10c]
fadd qword [0x5016fd]
fstp qword [ebp - 0x114]
push 0x80000601
push dword [ebp - 0x110]
push dword [ebp - 0x114]
push 1
mov ebx, 0x44aac0
call fcn.004487d6
add esp, 0x10
mov dword [ebp - 0x118], eax
mov ebx, dword [ebp - 0x24]
add ebx, 0x18
mov dword [ebp - 0x11c], ebx
mov ebx, dword [ebp - 0x11c]
mov ax, word [ebx]
cwde
mov dword [ebp - 0x124], eax
fild dword [ebp - 0x124]
fstp qword [ebp - 0x124]
fld qword [ebp - 0x124]
fmul qword [0x5018a1]
fstp qword [ebp - 0x12c]
push 0x80000601
push dword [ebp - 0x128]
push dword [ebp - 0x12c]
push 1
mov ebx, 0x44aac0
call fcn.004487d6
add esp, 0x10
mov dword [ebp - 0x130], eax
mov ebx, dword [ebp - 0x24]
add ebx, 0x1c
mov dword [ebp - 0x134], ebx
mov ebx, dword [ebp - 0x134]
mov ax, word [ebx]
cwde
mov dword [ebp - 0x13c], eax
fild dword [ebp - 0x13c]
fstp qword [ebp - 0x13c]
fld qword [ebp - 0x13c]
fmul qword [0x501765]
fstp qword [ebp - 0x144]
push 0x80000601
push dword [ebp - 0x140]
push dword [ebp - 0x144]
push 1
mov ebx, 0x44aac0
call fcn.004487d6
add esp, 0x10
mov dword [ebp - 0x148], eax
mov ebx, dword [ebp - 0x24]
add ebx, 8
mov dword [ebp - 0x14c], ebx
mov ebx, dword [ebp - 0x14c]
mov ax, word [ebx]
cwde
mov dword [ebp - 0x154], eax
fild dword [ebp - 0x154]
fstp qword [ebp - 0x154]
fld qword [ebp - 0x154]
fmul qword [0x5018a1]
fstp qword [ebp - 0x15c]
push 0x80000601
push dword [ebp - 0x158]
push dword [ebp - 0x15c]
push 1
mov ebx, 0x44aac0
call fcn.004487d6
add esp, 0x10
mov dword [ebp - 0x160], eax
call fcn.00420566
mov dword [ebp - 0x164], eax
push dword [ebp - 0x164]
push dword [ebp - 0x160]
push dword [ebp - 0x148]
push dword [ebp - 0x130]
push dword [ebp - 0x118]
push dword [ebp - 0x100]
push dword [ebp - 0x28]
mov ecx, 7
call fcn.004018de
add esp, 0x1c
mov dword [ebp - 0x168], eax
mov ebx, dword [ebp - 0x100]
test ebx, ebx
je 0x41b9c5
push ebx
call fcn.004487e2
add esp, 4
mov ebx, dword [ebp - 0x118]
test ebx, ebx
je 0x41b9d8
push ebx
call fcn.004487e2
add esp, 4
mov ebx, dword [ebp - 0x130]
test ebx, ebx
je 0x41b9eb
push ebx
call fcn.004487e2
add esp, 4
mov ebx, dword [ebp - 0x148]
test ebx, ebx
je 0x41b9fe
push ebx
call fcn.004487e2
add esp, 4
mov ebx, dword [ebp - 0x160]
test ebx, ebx
je 0x41ba11
push ebx
call fcn.004487e2
add esp, 4
mov ebx, dword [ebp - 0x164]
test ebx, ebx
je 0x41ba24
push ebx
call fcn.004487e2
add esp, 4
mov eax, dword [ebp - 0x168]
push eax
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x41ba3b
push ebx
call fcn.004487e2
add esp, 4
pop eax
mov dword [ebp - 0x28], eax
push 0x80000004
push 0
mov eax, dword [ebp - 0x28]
test eax, eax
jne 0x41ba52
mov eax, 0x5015f1
push eax
push 1
mov ebx, 0x44a080
call fcn.004487d6
add esp, 0x10
mov dword [ebp - 0xec], eax
lea eax, [ebp - 0xec]
push eax
call fcn.0040b505
mov dword [ebp - 0xf0], eax
mov ebx, dword [ebp - 0xec]
test ebx, ebx
je 0x41ba90
push ebx
call fcn.004487e2
add esp, 4
push 0x80000301
push 0
push dword [ebp - 0x2c]
push 1
mov ebx, 0x44aac0
call fcn.004487d6
add esp, 0x10
mov dword [ebp - 0xf4], eax
push dword [ebp - 0xf4]
push dword [ebp - 0xf0]
mov ecx, 2
call fcn.004018de
add esp, 8
mov dword [ebp - 0xf8], eax
mov ebx, dword [ebp - 0xf0]
test ebx, ebx
je 0x41bae4
push ebx
call fcn.004487e2
add esp, 4
mov ebx, dword [ebp - 0xf4]
test ebx, ebx
je 0x41baf7
push ebx
call fcn.004487e2
add esp, 4
mov eax, dword [ebp - 0xf8]
push eax
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x41bb0e
push ebx
call fcn.004487e2
add esp, 4
pop eax
mov dword [ebp - 0x28], eax
cmp dword [ebp + 0xc], 0
jne 0x41bb7b
push 0x80000004
push 0
mov eax, dword [ebp - 0x20]
test eax, eax
jne 0x41bb2f
mov eax, 0x5015f1
push eax
push 1
mov ebx, 0x448cf0
call fcn.004487d6
add esp, 0x10
mov dword [ebp - 0xf0], eax
cmp dword [ebp - 0xf0], 0
jne 0x41bb7b
call fcn.0040aa30
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0xec]
push eax
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x41bb77
push ebx
call fcn.004487e2
add esp, 4
pop eax
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 4]
mov dword [ebp - 0x30], eax
mov eax, 0x501676
test eax, eax
je 0x41bb9d
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.004487dc
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x41bbae
push ebx
call fcn.004487e2
add esp, 4
pop eax
mov dword [ebp - 0x34], eax
mov eax, 0x501676
test eax, eax
je 0x41bbce
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.004487dc
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [0xa27f40]
test ebx, ebx
je 0x41bbe2
push ebx
call fcn.004487e2
add esp, 4
pop eax
mov dword [0xa27f40], eax
mov eax, 0x501676
test eax, eax
je 0x41bc04
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.004487dc
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [0xa27f44]
test ebx, ebx
je 0x41bc18
push ebx
call fcn.004487e2
add esp, 4
pop eax
mov dword [0xa27f44], eax
mov eax, 0x501676
test eax, eax
je 0x41bc3a
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.004487dc
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [0xa27f48]
test ebx, ebx
je 0x41bc4e
push ebx
call fcn.004487e2
add esp, 4
pop eax
mov dword [0xa27f48], eax
mov eax, 0x5015f1
push eax
mov ebx, dword [0xa27f4c]
test ebx, ebx
je 0x41bc6d
push ebx
call fcn.004487e2
add esp, 4
pop eax
mov dword [0xa27f4c], eax
mov dword [0xa27f50], 0
mov dword [0xa27f54], 0
mov dword [0xa27f58], 0
mov eax, dword [0xa27f34]
and eax, 0xff
mov dword [ebp - 0xf0], eax
fild dword [ebp - 0xf0]
fstp qword [ebp - 0xf0]
fld qword [ebp - 0xf0]
fadd qword [0x50176f]
fstp qword [ebp - 0xf8]
fld qword [ebp - 0xf8]
call fcn.00401c9b
mov byte [0xa27f34], al
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x41bceb
push eax
mov ebx, eax
call fcn.00401873
inc eax
push eax
call fcn.004487dc
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0x38]
test ebx, ebx
je 0x41bcfc
push ebx
call fcn.004487e2
add esp, 4
pop eax
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
test eax, eax
je 0x41bd1c
push eax
mov ebx, eax
call fcn.00401873
inc eax
push eax
call fcn.004487dc
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [0xa27f5c]
test ebx, ebx
je 0x41bd30
push ebx
call fcn.004487e2
add esp, 4
pop eax
mov dword [0xa27f5c], eax
mov eax, 0x50166b
push eax
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x41bd4c
push ebx
call fcn.004487e2
add esp, 4
pop eax
mov dword [ebp - 0x3c], eax
call fcn.0040aa30
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0xec]
push eax
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x41bd72
push ebx
call fcn.004487e2
add esp, 4
pop eax
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 8]
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x48], eax
call fcn.00420924
mov dword [0xa27f60], eax
call fcn.004209ea
mov dword [ebp - 0xec], eax
push 0x80000004
push 0
mov eax, dword [ebp - 0xec]
test eax, eax
jne 0x41bdad
mov eax, 0x5015f1
push eax
push 1
mov ebx, 0x44a080
call fcn.004487d6
add esp, 0x10
mov dword [ebp - 0xf0], eax
mov ebx, dword [ebp - 0xec]
test ebx, ebx
je 0x41bdd9
push ebx
call fcn.004487e2
add esp, 4
mov dword [ebp - 0xf4], 0
push 0
push dword [ebp - 0xf4]
push 1
mov eax, 0x517ec0
mov dword [ebp - 0xf8], eax
lea eax, [ebp - 0xf8]
push eax
lea eax, [ebp - 0xf0]
push eax
call fcn.0040a5b8
mov dword [ebp - 0xfc], eax
mov ebx, dword [ebp - 0xf0]
test ebx, ebx
je 0x41be24
push ebx
call fcn.004487e2
add esp, 4
mov ebx, dword [ebp - 0xf8]
test ebx, ebx
je 0x41be37
push ebx
call fcn.004487e2
add esp, 4
push 1
mov eax, 0x517ec0
mov dword [ebp - 0x100], eax
lea eax, [ebp - 0x100]
push eax
lea eax, [ebp - 0xfc]
push eax
call fcn.00421fa7
mov dword [ebp - 0x104], eax
mov ebx, dword [ebp - 0xfc]
test ebx, ebx
je 0x41be70
push ebx
call fcn.004487e2
add esp, 4
mov ebx, dword [ebp - 0x100]
test ebx, ebx
je 0x41be83
push ebx
call fcn.004487e2
add esp, 4
lea eax, [ebp - 0x104]
push eax
call fcn.0042060d
mov dword [ebp - 0x108], eax
mov ebx, dword [ebp - 0x104]
test ebx, ebx
je 0x41bea8
push ebx
call fcn.004487e2
add esp, 4
mov eax, dword [ebp - 0x108]
push eax
mov ebx, dword [ebp - 0x4c]
test ebx, ebx
je 0x41bebf
push ebx
call fcn.004487e2
add esp, 4
pop eax
mov dword [ebp - 0x4c], eax
mov eax, 0x517ed1
mov dword [ebp - 0xec], eax
lea eax, [ebp - 0xec]
push eax
call fcn.00403cef
mov dword [ebp - 0xf0], eax
mov ebx, dword [ebp - 0xec]
test ebx, ebx
je 0x41bef3
push ebx
call fcn.004487e2
add esp, 4
call fcn.00422179
mov dword [ebp - 0xf4], eax
push 0x80000004
push 0
mov eax, dword [ebp - 0xf4]
test eax, eax
jne 0x41bf14
mov eax, 0x5015f1
push eax
push 1
mov ebx, 0x44aac0
call fcn.004487d6
add esp, 0x10
mov dword [ebp - 0xf8], eax
mov ebx, dword [ebp - 0xf4]
test ebx, ebx
je 0x41bf40
push ebx
call fcn.004487e2
add esp, 4
call fcn.004221fd
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x44aac0
call fcn.004487d6
add esp, 0x10
mov dword [ebp - 0x100], eax
push 0x80000004
push 0
mov eax, dword [ebp - 0x28]
test eax, eax
jne 0x41bf78
mov eax, 0x5015f1
push eax
push 1
mov ebx, 0x44aac0
call fcn.004487d6
add esp, 0x10
mov dword [ebp - 0x104], eax
push 0x80000301
push 0
push dword [ebp - 0x44]
push 1
mov ebx, 0x44aac0
call fcn.004487d6
add esp, 0x10
mov dword [ebp - 0x108], eax
push 0x80000301
push 0
push dword [ebp - 0x48]
push 1
mov ebx, 0x44aac0
call fcn.004487d6
add esp, 0x10
mov dword [ebp - 0x10c], eax
push 0x80000301
push 0
push dword [ebp - 0x30]
push 1
mov ebx, 0x44a080
call fcn.004487d6
add esp, 0x10
mov dword [ebp - 0x110], eax
mov dword [ebp - 0x114], 0
push 0
push dword [ebp - 0x114]
mov dword [ebp - 0x118], 0
push 0
lea eax, [ebp - 0x118]
push eax
lea eax, [ebp - 0x110]
push eax
call fcn.0040a5b8
mov dword [ebp - 0x11c], eax
mov ebx, dword [ebp - 0x110]
test ebx, ebx
je 0x41c041
push ebx
call fcn.004487e2
add esp, 4
mov ebx, dword [ebp - 0x118]
test ebx, ebx
je 0x41c054
push ebx
call fcn.004487e2
add esp, 4
lea eax, [ebp - 0x11c]
push eax
call fcn.0042060d
mov dword [ebp - 0x120], eax
mov ebx, dword [ebp - 0x11c]
test ebx, ebx
je 0x41c079
push ebx
call fcn.004487e2
add esp, 4
mov eax, 0x517ee0
mov dword [ebp - 0x124], eax
lea eax, [ebp - 0x124]
push eax
call fcn.00403cef
mov dword [ebp - 0x128], eax
mov ebx, dword [ebp - 0x124]
test ebx, ebx
je 0x41c0a9
push ebx
call fcn.004487e2
add esp, 4
call fcn.00422262
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x44aac0
call fcn.004487d6
add esp, 0x10
mov dword [ebp - 0x130], eax
push 0x80000301
push 0
push dword [0xa27f60]
push 1
mov ebx, 0x44aac0
call fcn.004487d6
add esp, 0x10
mov dword [ebp - 0x134], eax
push dword [ebp - 0x134]
push dword [ebp - 0x3c]
push dword [ebp - 0x130]
push dword [ebp - 0x128]
push dword [ebp - 0x4c]
push dword [ebp - 0x3c]
push dword [ebp - 0x120]
push dword [ebp - 0x3c]
push dword [ebp - 0x10c]
push dword [ebp - 0x3c]
push dword [ebp - 0x108]
push dword [ebp - 0x3c]
push dword [ebp - 0x104]
push dword [ebp - 0x3c]
push dword [ebp - 0x100]
push dword [ebp - 0x3c]
push dword [ebp - 0xf8]
push dword [ebp - 0x3c]
push dword [ebp - 0x38]
push dword [ebp - 0x3c]
push dword [ebp - 0x40]
push dword [ebp - 0xf0]
mov ecx, 0x16
call fcn.004018de
add esp, 0x58
mov dword [ebp - 0x138], eax
mov ebx, dword [ebp - 0xf0]
test ebx, ebx
je 0x41c179
push ebx
call fcn.004487e2
add esp, 4
mov ebx, dword [ebp - 0xf8]
test ebx, ebx
je 0x41c18c
push ebx
call fcn.004487e2
add esp, 4
mov ebx, dword [ebp - 0x100]
test ebx, ebx
je 0x41c19f
push ebx
call fcn.004487e2
add esp, 4
mov ebx, dword [ebp - 0x104]
test ebx, ebx
je 0x41c1b2
push ebx
call fcn.004487e2
add esp, 4
mov ebx, dword [ebp - 0x108]
test ebx, ebx
je 0x41c1c5
push ebx
call fcn.004487e2
add esp, 4
mov ebx, dword [ebp - 0x10c]
test ebx, ebx
je 0x41c1d8
push ebx
call fcn.004487e2
add esp, 4
mov ebx, dword [ebp - 0x120]
test ebx, ebx
je 0x41c1eb
push ebx
call fcn.004487e2
add esp, 4
mov ebx, dword [ebp - 0x128]
test ebx, ebx
je 0x41c1fe
push ebx
call fcn.004487e2
add esp, 4
mov ebx, dword [ebp - 0x130]
test ebx, ebx
je 0x41c211
push ebx
call fcn.004487e2
add esp, 4
mov ebx, dword [ebp - 0x134]
test ebx, ebx
je 0x41c224
push ebx
call fcn.004487e2
add esp, 4
push 0x80000004
push 0
mov eax, dword [ebp - 0x138]
test eax, eax
jne 0x41c23a
mov eax, 0x5015f1
push eax
push 1
mov ebx, 0x44a080
call fcn.004487d6
add esp, 0x10
mov dword [ebp - 0x13c], eax
mov ebx, dword [ebp - 0x138]
test ebx, ebx
je 0x41c266
push ebx
call fcn.004487e2
add esp, 4
mov eax, dword [ebp - 0x13c]
push eax
mov ebx, dword [ebp - 0x50]
test ebx, ebx
je 0x41c27d
push ebx
call fcn.004487e2
add esp, 4
pop eax
mov dword [ebp - 0x50], eax
cmp dword [ebp + 0xc], 1
jne 0x41c38e
mov eax, 0x517eea
mov dword [ebp - 0xec], eax
lea eax, [ebp - 0xec]
push eax
call fcn.00403cef
mov dword [ebp - 0xf0], eax
mov ebx, dword [ebp - 0xec]
test ebx, ebx
je 0x41c2bb
push ebx
call fcn.004487e2
add esp, 4
push 0x80000005
push 0
mov eax, dword [ebp - 0x50]
test eax, eax
jne 0x41c2ce
mov eax, 0x501676
push eax
push 1
mov ebx, 0x44aac0
call fcn.004487d6
add esp, 0x10
mov dword [ebp - 0xf4], eax
push dword [ebp - 0xf4]
push dword [ebp - 0xf0]
mov ecx, 2
call fcn.004018de
add esp, 8
mov dword [ebp - 0xf8], eax
mov ebx, dword [ebp - 0xf0]
test ebx, ebx
je 0x41c319
push ebx
call fcn.004487e2
add esp, 4
mov ebx, dword [ebp - 0xf4]
test ebx, ebx
je 0x41c32c
push ebx
call fcn.004487e2
add esp, 4
push 0x80000004
push 0
mov eax, dword [ebp - 0xf8]
test eax, eax
jne 0x41c342
mov eax, 0x5015f1
push eax
push 1
mov ebx, 0x44a080
call fcn.004487d6
add esp, 0x10
mov dword [ebp - 0xfc], eax
mov ebx, dword [ebp - 0xf8]
test ebx, ebx
je 0x41c36e
push ebx
call fcn.004487e2
add esp, 4
mov eax, dword [ebp - 0xfc]
push eax
mov ebx, dword [ebp - 0x50]
test ebx, ebx
je 0x41c385
push ebx
call fcn.004487e2
add esp, 4
pop eax
mov dword [ebp - 0x50], eax
jmp 0x41c48c
mov eax, 0x517efb
mov dword [ebp - 0xec], eax
lea eax, [ebp - 0xec]
push eax
call fcn.00403cef
mov dword [ebp - 0xf0], eax
mov ebx, dword [ebp - 0xec]
test ebx, ebx
je 0x41c3be
push ebx
call fcn.004487e2
add esp, 4
push 0x80000005
push 0
mov eax, dword [ebp - 0x50]
test eax, eax
jne 0x41c3d1
mov eax, 0x501676
push eax
push 1
mov ebx, 0x44aac0
call fcn.004487d6
add esp, 0x10
mov dword [ebp - 0xf4], eax
push dword [ebp - 0xf4]
push dword [ebp - 0xf0]
mov ecx, 2
call fcn.004018de
add esp, 8
mov dword [ebp - 0xf8], eax
mov ebx, dword [ebp - 0xf0]
test ebx, ebx
je 0x41c41c
push ebx
call fcn.004487e2
add esp, 4
mov ebx, dword [ebp - 0xf4]
test ebx, ebx
je 0x41c42f
push ebx
call fcn.004487e2
add esp, 4
push 0x80000004
push 0
mov eax, dword [ebp - 0xf8]
test eax, eax
jne 0x41c445
mov eax, 0x5015f1
push eax
push 1
mov ebx, 0x44a080
call fcn.004487d6
add esp, 0x10
mov dword [ebp - 0xfc], eax
mov ebx, dword [ebp - 0xf8]
test ebx, ebx
je 0x41c471
push ebx
call fcn.004487e2
add esp, 4
mov eax, dword [ebp - 0xfc]
push eax
mov ebx, dword [ebp - 0x50]
test ebx, ebx
je 0x41c488
push ebx
call fcn.004487e2
add esp, 4
pop eax
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x54], 0xd08603cc
mov dword [ebp - 0x58], 0x2079d0e8
dec dword [0xa27f24]
fld qword [0xa27f28]
fadd qword [0x5018a1]
fstp qword [0xa27f28]
fld dword [0xa27f30]
fadd qword [0x501880]
fstp qword [ebp - 0xf0]
fld qword [ebp - 0xf0]
fstp dword [ebp - 0xf4]
mov eax, dword [ebp - 0xf4]
mov dword [0xa27f30], eax
cmp dword [ebp - 0x1c], 0
je 0x41c538
call fcn.00420315
mov dword [ebp - 0xf8], eax
fild dword [ebp - 0xf8]
fstp qword [ebp - 0xf8]
fld qword [ebp - 0xf8]
fild dword [ebp - 0x1c]
fstp qword [ebp - 0x100]
fsub qword [ebp - 0x100]
fstp qword [ebp - 0x108]
fld qword [ebp - 0x108]
fsub qword [0x517f08]
fcomp qword [0x517f10]
fnstsw ax
test ah, 1
jne 0x41c538
xor eax, eax
jmp 0x41c53d
mov eax, 1
test eax, eax
je 0x41c6a9
mov eax, dword [ebp - 0x38]
test eax, eax
je 0x41c561
push eax
mov ebx, eax
call fcn.00401873
inc eax
push eax
call fcn.004487dc
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [0xa27f64]
test ebx, ebx
je 0x41c575
push ebx
call fcn.004487e2
add esp, 4
pop eax
mov dword [0xa27f64], eax
push 0x80000005
push 0
mov eax, dword [ebp - 0x50]
test eax, eax
jne 0x41c58e
mov eax, 0x501676
push eax
push 1
mov ebx, 0x44a080
call fcn.004487d6
add esp, 0x10
mov dword [ebp - 0xec], eax
mov dword [ebp - 0xf0], 0
push 0
push dword [ebp - 0xf0]
mov dword [ebp - 0xf4], 0
push 0
push dword [ebp - 0xf4]
mov dword [ebp - 0xf8], 0
push 0
push dword [ebp - 0xf8]
lea eax, [ebp - 0xec]
push eax
call fcn.00401d19
mov dword [ebp - 0xfc], eax
mov ebx, dword [ebp - 0xec]
test ebx, ebx
je 0x41c602
push ebx
call fcn.004487e2
add esp, 4
mov eax, dword [ebp - 0xfc]
push eax
mov ebx, dword [ebp - 0x5c]
test ebx, ebx
je 0x41c619
push ebx
call fcn.004487e2
add esp, 4
pop eax
mov dword [ebp - 0x5c], eax
call fcn.00420315
mov dword [ebp - 0x1c], eax
dec dword [0xa27f24]
fld qword [0xa27f28]
fadd qword [0x5018a1]
fstp qword [0xa27f28]
fld dword [0xa27f30]
fadd qword [0x501880]
fstp qword [ebp - 0xf0]
fld qword [ebp - 0xf0]
fstp dword [ebp - 0xf4]
mov eax, dword [ebp - 0xf4]
mov dword [0xa27f30], eax
mov eax, dword [0xa27f34]
and eax, 0xff
mov dword [ebp - 0xf0], eax
fild dword [ebp - 0xf0]
fstp qword [ebp - 0xf0]
fld qword [ebp - 0xf0]
fadd qword [0x50176f]
fstp qword [ebp - 0xf8]
fld qword [ebp - 0xf8]
call fcn.00401c9b
mov byte [0xa27f34], al
jmp 0x41c734
push 0x80000301
push 0
push dword [0xa27eec]
push 1
mov eax, 4
mov ebx, 0x4b7da0
call fcn.004487e8
add esp, 0x10
cmp dword [ebp - 0x60], 0xfffffb9e
je 0x41c734
inc dword [ebp - 0x64]
dec dword [ebp - 0x68]
fild dword [ebp - 0x6c]
fstp qword [ebp - 0xf0]
fld qword [ebp - 0xf0]
fmul qword [0x5018a1]
fstp qword [ebp - 0xf8]
fld qword [ebp - 0xf8]
call fcn.00401c9b
mov dword [ebp - 0x6c], eax
fild dword [ebp - 0x70]
fstp qword [ebp - 0xf0]
fld qword [ebp - 0xf0]
fdiv qword [0x5018a1]
fstp qword [ebp - 0xf8]
fld qword [ebp - 0xf8]
call fcn.00401c9b
mov dword [ebp - 0x70], eax
jmp 0x41c6cd
push 0x80000005
push 0
mov eax, dword [ebp - 0x5c]
test eax, eax
jne 0x41c747
mov eax, 0x501676
push eax
push 1
mov ebx, 0x448d10
call fcn.004487d6
add esp, 0x10
mov dword [ebp - 0xf0], eax
cmp dword [ebp - 0xf0], 0
jne 0x41c7c1
mov eax, 0x517f18
mov dword [ebp - 0xec], eax
lea eax, [ebp - 0xec]
push eax
call fcn.00403cef
mov dword [ebp - 0xf0], eax
mov ebx, dword [ebp - 0xec]
test ebx, ebx
je 0x41c79d
push ebx
call fcn.004487e2
add esp, 4
mov eax, dword [ebp - 0xf0]
push eax
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
test ebx, ebx
je 0x41c7b6
push ebx
call fcn.004487e2
add esp, 4
pop eax
mov ebx, dword [ebp + 0x10]
mov dword [ebx], eax
jmp 0x41f989
mov eax, dword [ebp - 0x5c]
test eax, eax
je 0x41c7db
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.004487dc
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0x74]
test ebx, ebx
je 0x41c7ec
push ebx
call fcn.004487e2
add esp, 4
pop eax
mov dword [ebp - 0x74], eax
dec dword [0xa27f24]
fld qword [0xa27f28]
fadd qword [0x5018a1]
fstp qword [0xa27f28]
fld dword [0xa27f30]
fadd qword [0x501880]
fstp qword [ebp - 0xf0]
fld qword [ebp - 0xf0]
fstp dword [ebp - 0xf4]
mov eax, dword [ebp - 0xf4]
mov dword [0xa27f30], eax
mov eax, dword [0xa27f34]
and eax, 0xff
mov dword [ebp - 0xf0], eax
fild dword [ebp - 0xf0]
fstp qword [ebp - 0xf0]
fld qword [ebp - 0xf0]
fadd qword [0x50176f]
fstp qword [ebp - 0xf8]
fld qword [ebp - 0xf8]
call fcn.00401c9b
mov byte [0xa27f34], al
push 0x80000005
push 0
mov eax, dword [ebp - 0x74]
test eax, eax
jne 0x41c882
mov eax, 0x501676
push eax
push 1
mov ebx, 0x448d10
call fcn.004487d6
add esp, 0x10
mov dword [ebp - 0xf0], eax
cmp dword [ebp - 0xf0], 0
jne 0x41c92a
mov eax, 0x517f3b
mov dword [ebp - 0xec], eax
lea eax, [ebp - 0xec]
push eax
call fcn.00403cef
mov dword [ebp - 0xf0], eax
mov ebx, dword [ebp - 0xec]
test ebx, ebx
je 0x41c8d8
push ebx
call fcn.004487e2
add esp, 4
mov eax, dword [ebp - 0xf0]
push eax
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
test ebx, ebx
je 0x41c8f1
push ebx
call fcn.004487e2
add esp, 4
pop eax
mov ebx, dword [ebp + 0x10]
mov dword [ebx], eax
push 0x80000301
push 0
push dword [0xa27eec]
push 1
mov eax, 4
mov ebx, 0x4b7da0
call fcn.004487e8
add esp, 0x10
mov eax, 0
jmp 0x4200f6
mov eax, dword [ebp - 0x74]
test eax, eax
je 0x41c944
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.004487dc
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0x78]
test ebx, ebx
je 0x41c955
push ebx
call fcn.004487e2
add esp, 4
pop eax
mov dword [ebp - 0x78], eax
cmp dword [ebp + 0xc], 1
jne 0x41ca60
push 0x80000005
push 0
mov eax, dword [ebp - 0x74]
test eax, eax
jne 0x41c976
mov eax, 0x501676
push eax
push 1
mov ebx, 0x44aac0
call fcn.004487d6
add esp, 0x10
mov dword [ebp - 0xf0], eax
push 0x80000301
push 0
push 2
push 0x80000004
push 0
mov eax, dword [ebp - 0xf0]
test eax, eax
jne 0x41c9b1
mov eax, 0x5015f1
push eax
push 2
mov ebx, 0x449100
call fcn.004487d6
add esp, 0x1c
mov dword [ebp - 0xf4], eax
mov ebx, dword [ebp - 0xf0]
test ebx, ebx
je 0x41c9dd
push ebx
call fcn.004487e2
add esp, 4
mov eax, 0x517f4f
mov dword [ebp - 0xf8], eax
lea eax, [ebp - 0xf8]
push eax
call fcn.00403cef
mov dword [ebp - 0xfc], eax
mov ebx, dword [ebp - 0xf8]
test ebx, ebx
je 0x41ca0d
push ebx
call fcn.004487e2
add esp, 4
lea eax, [ebp - 0xfc]
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.00422303
mov dword [ebp - 0x100], eax
mov ebx, dword [ebp - 0xf4]
test ebx, ebx
je 0x41ca39
push ebx
call fcn.004487e2
add esp, 4
mov ebx, dword [ebp - 0xfc]
test ebx, ebx
je 0x41ca4c
push ebx
call fcn.004487e2
add esp, 4
cmp dword [ebp - 0x100], 1
jne 0x41ca60
mov eax, 1
jmp 0x41ca65
mov eax, 0
test eax, eax
je 0x41cbb2
push 0x80000301
push 0
push 0x20
push 0x80000301
push 0
push 3
push 0x80000005
push 0
mov eax, dword [ebp - 0x74]
test eax, eax
jne 0x41ca98
mov eax, 0x501676
push eax
push 3
mov ebx, 0x44a4b0
call fcn.004487d6
add esp, 0x28
mov dword [ebp - 0xec], eax
push 0x80000005
push 0
mov eax, dword [ebp - 0xec]
test eax, eax
jne 0x41cac7
mov eax, 0x501676
push eax
push 1
mov ebx, 0x44aac0
call fcn.004487d6
add esp, 0x10
mov dword [ebp - 0xf0], eax
mov ebx, dword [ebp - 0xec]
test ebx, ebx
je 0x41caf3
push ebx
call fcn.004487e2
add esp, 4
mov eax, dword [ebp - 0xf0]
push eax
mov ebx, dword [ebp - 0x38]
test ebx, ebx
je 0x41cb0a
push ebx
call fcn.004487e2
add esp, 4
pop eax
mov dword [ebp - 0x38], eax
push 0x80000005
push 0
mov eax, dword [ebp - 0x74]
test eax, eax
jne 0x41cb21
mov eax, 0x501676
push eax
push 1
mov ebx, 0x448d10
call fcn.004487d6
add esp, 0x10
mov dword [ebp - 0xf4], eax
fild dword [ebp - 0xf4]
fstp qword [ebp - 0xf4]
fld qword [ebp - 0xf4]
fsub qword [0x517f5a]
fstp qword [ebp - 0xfc]
fld qword [ebp - 0xfc]
call fcn.00401c9b
push 0x80000301
push 0
push eax
push 0x80000005
push 0
mov eax, dword [ebp - 0x74]
test eax, eax
jne 0x41cb7e
mov eax, 0x501676
push eax
push 2
mov ebx, 0x44a470
call fcn.004487d6
add esp, 0x1c
mov dword [ebp - 0x100], eax
mov eax, dword [ebp - 0x100]
push eax
mov ebx, dword [ebp - 0x74]
test ebx, ebx
je 0x41cbae
push ebx
call fcn.004487e2
add esp, 4
pop eax
mov dword [ebp - 0x74], eax
dec dword [0xa27f24]
fld qword [0xa27f28]
fadd qword [0x5018a1]
fstp qword [0xa27f28]
fld dword [0xa27f30]
fadd qword [0x501880]
fstp qword [ebp - 0xf0]
fld qword [ebp - 0xf0]
fstp dword [ebp - 0xf4]
mov eax, dword [ebp - 0xf4]
mov dword [0xa27f30], eax
mov eax, dword [0xa27f34]
and eax, 0xff
mov dword [ebp - 0xf0], eax
fild dword [ebp - 0xf0]
fstp qword [ebp - 0xf0]
fld qword [ebp - 0xf0]
fadd qword [0x50176f]
fstp qword [ebp - 0xf8]
fld qword [ebp - 0xf8]
call fcn.00401c9b
mov byte [0xa27f34], al
call fcn.0040aa30
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0xec]
push eax
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x41cc53
push ebx
call fcn.004487e2
add esp, 4
pop eax
mov dword [ebp - 0x40], eax
call fcn.004221fd
mov dword [ebp - 0xf4], eax
fild dword [ebp - 0xf4]
fstp qword [ebp - 0xf4]
fld qword [ebp - 0xf4]
fmul qword [0x5016fd]
fstp qword [ebp - 0xfc]
push 0x80000601
push dword [ebp - 0xf8]
push dword [ebp - 0xfc]
push 1
mov ebx, 0x44aac0
call fcn.004487d6
add esp, 0x10
mov dword [ebp - 0x100], eax
mov dword [ebp - 0x104], 0
push 0
push dword [ebp - 0x104]
mov dword [ebp - 0x108], 0
push 0
lea eax, [ebp - 0x108]
push eax
push 0xa27edc
call fcn.0040311e
mov dword [ebp - 0x10c], eax
mov ebx, dword [ebp - 0x108]
test ebx, ebx
je 0x41ccf1
push ebx
call fcn.004487e2
add esp, 4
push 0x80000005
push 0
mov eax, dword [ebp - 0x10c]
test eax, eax
jne 0x41cd07
mov eax, 0x501676
push eax
push 1
mov ebx, 0x44aac0
call fcn.004487d6
add esp, 0x10
mov dword [ebp - 0x110], eax
mov ebx, dword [ebp - 0x10c]
test ebx, ebx
je 0x41cd33
push ebx
call fcn.004487e2
add esp, 4
push dword [ebp - 0x110]
push dword [ebp - 0x28]
push dword [ebp - 0x100]
push dword [ebp - 0x40]
mov ecx, 4
call fcn.004018de
add esp, 0x10
mov dword [ebp - 0x114], eax
mov ebx, dword [ebp - 0x100]
test ebx, ebx
je 0x41cd6b
push ebx
call fcn.004487e2
add esp, 4
mov ebx, dword [ebp - 0x110]
test ebx, ebx
je 0x41cd7e
push ebx
call fcn.004487e2
add esp, 4
push 0x80000004
push 0
mov eax, dword [ebp - 0x114]
test eax, eax
jne 0x41cd94
mov eax, 0x5015f1
push eax
push 1
mov ebx, 0x44a080
call fcn.004487d6
add esp, 0x10
mov dword [ebp - 0x118], eax
mov ebx, dword [ebp - 0x114]
test ebx, ebx
je 0x41cdc0
push ebx
call fcn.004487e2
add esp, 4
mov dword [ebp - 0x11c], 0
push 0
lea eax, [ebp - 0x11c]
push eax
lea eax, [ebp - 0x118]
push eax
call fcn.00421fa7
mov dword [ebp - 0x120], eax
mov ebx, dword [ebp - 0x118]
test ebx, ebx
je 0x41cdf8
push ebx
call fcn.004487e2
add esp, 4
mov ebx, dword [ebp - 0x11c]
test ebx, ebx
je 0x41ce0b
push ebx
call fcn.004487e2
add esp, 4
push 0x80000301
push 0
push dword [ebp - 0x54]
push 1
mov ebx, 0x44a080
call fcn.004487d6
add esp, 0x10
mov dword [ebp - 0x124], eax
push dword [ebp - 0x124]
push dword [ebp - 0x120]
mov ecx, 2
call fcn.00401cc2
add esp, 8
mov dword [ebp - 0x128], eax
mov ebx, dword [ebp - 0x120]
test ebx, ebx
je 0x41ce5f
push ebx
call fcn.004487e2
add esp, 4
mov ebx, dword [ebp - 0x124]
test ebx, ebx
je 0x41ce72
push ebx
call fcn.004487e2
add esp, 4
mov eax, dword [ebp - 0x128]
push eax
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x41ce89
push ebx
call fcn.004487e2
add esp, 4
pop eax
mov dword [ebp - 0x34], eax
push 0x80000301
push 0
push 0x141e447a
push 1
mov ebx, 0x449640
call fcn.004487d6
add esp, 0x10
push 0x80000601
push edx
push eax
push 1
mov ebx, 0x44a080
call fcn.004487d6
add esp, 0x10
mov dword [ebp - 0xf4], eax
mov eax, dword [ebp - 0xf4]
push eax
mov ebx, dword [ebp - 0x7c]
test ebx, ebx
je 0x41cee1
push ebx
call fcn.004487e2
add esp, 4
pop eax
mov dword [ebp - 0x7c], eax
mov dword [ebp - 0xec], 0
push 0
push dword [ebp - 0xec]
push 1
lea eax, [ebp - 0x7c]
push eax
lea eax, [ebp - 0x74]
push eax
call fcn.0040311e
mov dword [ebp - 0xf0], eax
mov dword [ebp - 0xf4], 0
push 0
push dword [ebp - 0xf4]
push 1
lea eax, [ebp - 0x34]
push eax
lea eax, [ebp - 0xf0]
push eax
call fcn.0040d772
mov dword [ebp - 0xf8], eax
mov ebx, dword [ebp - 0xf0]
test ebx, ebx
je 0x41cf49
push ebx
call fcn.004487e2
add esp, 4
mov eax, dword [ebp - 0xf8]
push eax
mov ebx, dword [ebp - 0x80]
test ebx, ebx
je 0x41cf60
push ebx
call fcn.004487e2
add esp, 4
pop eax
mov dword [ebp - 0x80], eax
push 0x80000005
push 0
mov eax, dword [ebp - 0x80]
test eax, eax
jne 0x41cf77
mov eax, 0x501676
push eax
push 1
mov ebx, 0x44aac0
call fcn.004487d6
add esp, 0x10
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0xec]
push eax
mov ebx, dword [ebp - 0x84]
test ebx, ebx
je 0x41cfaa
push ebx
call fcn.004487e2
add esp, 4
pop eax
mov dword [ebp - 0x84], eax
push 0x80000004
push 0
mov eax, dword [ebp - 0x84]
test eax, eax
jne 0x41cfc7
mov eax, 0x5015f1
push eax
push 1
mov ebx, 0x44a080
call fcn.004487d6
add esp, 0x10
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0xec]
push eax
mov ebx, dword [0xa27f68]
test ebx, ebx
je 0x41cffa
push ebx
call fcn.004487e2
add esp, 4
pop eax
mov dword [0xa27f68], eax
push 0x80000005
push 0
mov eax, dword [ebp - 0x80]
test eax, eax
jne 0x41d013
mov eax, 0x501676
push eax
push 1
mov ebx, 0x44aac0
call fcn.004487d6
add esp, 0x10
mov dword [ebp - 0xec], eax
push 0
push 0
push 0
push 0x80000004
push 0
push 0x50166b
push 0x80000004
push 0
mov eax, dword [ebp - 0xec]
test eax, eax
jne 0x41d054
mov eax, 0x5015f1
push eax
push 3
mov ebx, 0x449ef0
call fcn.004487d6
add esp, 0x28
mov dword [ebp - 0xf0], eax
mov ebx, dword [ebp - 0xec]
test ebx, ebx
je 0x41d080
push ebx
call fcn.004487e2
add esp, 4
mov eax, dword [ebp - 0xf0]
push eax
mov ebx, dword [ebp - 0x88]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x41d0a8
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x41d0a4
imul eax, dword [ebx]
jmp 0x41d099
mov ecx, eax
test ecx, ecx
je 0x41d0c7
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x41d0c0
push ebx
push eax
call fcn.004487e2
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x41d0ae
call fcn.004487e2
add esp, 4
pop eax
mov dword [ebp - 0x88], eax
mov ebx, dword [ebp - 0x88]
call fcn.00403310
mov dword [ebp - 0xf0], eax
cmp dword [ebp - 0xf0], 0x10
jl 0x41f814
mov dword [ebp - 0xec], 0
push 0
lea eax, [ebp - 0xec]
push eax
call fcn.0042240d
mov dword [ebp - 0xf0], eax
mov ebx, dword [ebp - 0xec]
test ebx, ebx
je 0x41d125
push ebx
call fcn.004487e2
add esp, 4
lea eax, [ebp - 0xf0]
push eax
call fcn.0040b505
mov dword [ebp - 0xf4], eax
mov ebx, dword [ebp - 0xf0]
test ebx, ebx
je 0x41d14a
push ebx
call fcn.004487e2
add esp, 4
lea eax, [ebp - 0x5c]
push eax
call fcn.0040b505
mov dword [ebp - 0xf8], eax
lea eax, [ebp - 0xf8]
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.00422303
mov dword [ebp - 0xfc], eax
mov ebx, dword [ebp - 0xf4]
test ebx, ebx
je 0x41d185
push ebx
call fcn.004487e2
add esp, 4
mov ebx, dword [ebp - 0xf8]
test ebx, ebx
je 0x41d198
push ebx
call fcn.004487e2
add esp, 4
cmp dword [ebp - 0xfc], 0
je 0x41d217
cmp dword [ebp - 0x60], 0xfffffb9e
je 0x41d20c
inc dword [ebp - 0x64]
dec dword [ebp - 0x68]
fild dword [ebp - 0x6c]
fstp qword [ebp - 0xf0]
fld qword [ebp - 0xf0]
fmul qword [0x5018a1]
fstp qword [ebp - 0xf8]
fld qword [ebp - 0xf8]
call fcn.00401c9b
mov dword [ebp - 0x6c], eax
fild dword [ebp - 0x70]
fstp qword [ebp - 0xf0]
fld qword [ebp - 0xf0]
fdiv qword [0x5018a1]
fstp qword [ebp - 0xf8]
fld qword [ebp - 0xf8]
call fcn.00401c9b
mov dword [ebp - 0x70], eax
jmp 0x41d1a5
mov eax, dword [ebp - 0x8c]
jmp 0x4200f6
dec dword [0xa27f24]
fld qword [0xa27f28]
fadd qword [0x5018a1]
fstp qword [0xa27f28]
fld dword [0xa27f30]
fadd qword [0x501880]
fstp qword [ebp - 0xf0]
fld qword [ebp - 0xf0]
fstp dword [ebp - 0xf4]
mov eax, dword [ebp - 0xf4]
mov dword [0xa27f30], eax
mov eax, dword [0xa27f34]
and eax, 0xff
mov dword [ebp - 0xf0], eax
fild dword [ebp - 0xf0]
fstp qword [ebp - 0xf0]
fld qword [ebp - 0xf0]
fadd qword [0x50176f]
fstp qword [ebp - 0xf8]
fld qword [ebp - 0xf8]
call fcn.00401c9b
mov byte [0xa27f34], al
call fcn.0040aa30
mov dword [ebp - 0xec], eax
mov ebx, dword [ebp - 0x88]
call fcn.00403329
mov eax, 8
cmp eax, ecx
jl 0x41d2cc
push 0x291b
push 0x401371e
push 1
call fcn.004487ee
add esp, 0xc
shl eax, 2
add ebx, eax
mov dword [ebp - 0xf0], ebx
push dword [ebp - 0xf0]
lea eax, [ebp - 0xec]
push eax
call fcn.00422303
mov dword [ebp - 0xf4], eax
mov ebx, dword [ebp - 0xec]
test ebx, ebx
je 0x41d302
push ebx
call fcn.004487e2
add esp, 4
cmp dword [ebp - 0xf4], 0
jne 0x41d386
cmp dword [ebp - 0x60], 0xfffffb9e
je 0x41d376
inc dword [ebp - 0x64]
dec dword [ebp - 0x68]
fild dword [ebp - 0x6c]
fstp qword [ebp - 0xf0]
fld qword [ebp - 0xf0]
fmul qword [0x5018a1]
fstp qword [ebp - 0xf8]
fld qword [ebp - 0xf8]
call fcn.00401c9b
mov dword [ebp - 0x6c], eax
fild dword [ebp - 0x70]
fstp qword [ebp - 0xf0]
fld qword [ebp - 0xf0]
fdiv qword [0x5018a1]
fstp qword [ebp - 0xf8]
fld qword [ebp - 0xf8]
call fcn.00401c9b
mov dword [ebp - 0x70], eax
jmp 0x41d30f
mov eax, dword [ebp - 0x8c]
jmp 0x4200f6
dec dword [0xa27f24]
fld qword [0xa27f28]
fadd qword [0x5018a1]
fstp qword [0xa27f28]
fld dword [0xa27f30]
fadd qword [0x501880]
fstp qword [ebp - 0xf0]
fld qword [ebp - 0xf0]
fstp dword [ebp - 0xf4]
mov eax, dword [ebp - 0xf4]
mov dword [0xa27f30], eax
mov ebx, dword [ebp - 0x88]
call fcn.00403329
mov eax, 9
cmp eax, ecx
jl 0x41d3f2
push 0x2bee
push 0x401371e
push 1
call fcn.004487ee
add esp, 0xc
shl eax, 2
add ebx, eax
mov dword [ebp - 0xec], ebx
push dword [ebp - 0xec]
call fcn.0040a7de
mov dword [ebp - 0xf0], eax
call fcn.004224cc
mov dword [ebp - 0xf4], eax
push 0x80000301
push 0
push 1
push 0x80000301
push 0
push 0x10
push 0x80000004
push 0
mov eax, dword [ebp - 0xf4]
test eax, eax
jne 0x41d447
mov eax, 0x5015f1
push eax
push 3
mov ebx, 0x449190
call fcn.004487d6
add esp, 0x28
mov dword [ebp - 0xf8], eax
mov ebx, dword [ebp - 0xf4]
test ebx, ebx
je 0x41d473
push ebx
call fcn.004487e2
add esp, 4
lea eax, [ebp - 0xf8]
push eax
call fcn.00422533
mov dword [ebp - 0xfc], eax
mov ebx, dword [ebp - 0xf8]
test ebx, ebx
je 0x41d498
push ebx
call fcn.004487e2
add esp, 4
fild dword [ebp - 0xfc]
fstp qword [ebp - 0x104]
fld qword [ebp - 0x104]
fild dword [ebp - 0x54]
fstp qword [ebp - 0x10c]
fmul qword [ebp - 0x10c]
fstp qword [ebp - 0x114]
push 0x80000601
push dword [ebp - 0x110]
push dword [ebp - 0x114]
push 1
mov ebx, 0x449640
call fcn.004487d6
add esp, 0x10
push 0x80000601
push edx
push eax
push 1
mov ebx, 0x44a080
call fcn.004487d6
add esp, 0x10
mov dword [ebp - 0x120], eax
mov dword [ebp - 0x124], 0
push 0
push dword [ebp - 0x124]
push 1
lea eax, [ebp - 0x120]
push eax
lea eax, [ebp - 0xf0]
push eax
call fcn.0040311e
mov dword [ebp - 0x128], eax
mov ebx, dword [ebp - 0xf0]
test ebx, ebx
je 0x41d541
push ebx
call fcn.004487e2
add esp, 4
mov ebx, dword [ebp - 0x120]
test ebx, ebx
je 0x41d554
push ebx
call fcn.004487e2
add esp, 4
push 0
push 0
push 0
push 0x80000301
push 0
push 3
push 0x80000005
push 0
mov eax, dword [ebp - 0x128]
test eax, eax
jne 0x41d57c
mov eax, 0x501676
push eax
push 3
mov ebx, 0x44a2b0
call fcn.004487d6
add esp, 0x28
mov dword [ebp - 0x134], eax
mov dword [ebp - 0x130], edx
mov dword [ebp - 0x12c], ecx
mov ebx, dword [ebp - 0x128]
test ebx, ebx
je 0x41d5b4
mov ebx, dword [ebp - 0x88]
call fcn.00403310
mov dword [ebp - 0xf0], eax
cmp dword [ebp - 0xf0], 2
jne 0x41f8b8
push 0x80000301
push 0
push 1
push 0x80000004
push 0
mov eax, dword [ebp - 0x84]
test eax, eax
jne 0x41f854
mov eax, 0x5015f1
push eax
push 2
mov ebx, 0x449100
call fcn.004487d6
add esp, 0x1c
mov dword [ebp - 0xf8], eax
push 0x517ffe
push dword [ebp - 0xf8]
call fcn.004010b9
add esp, 8
cmp eax, 0
mov eax, 0
sete al
mov dword [ebp - 0xfc], eax
mov ebx, dword [ebp - 0xf8]
test ebx, ebx
je 0x41f8a4
push ebx
call fcn.004487e2
add esp, 4
cmp dword [ebp - 0xfc], 0
je 0x41f8b8
mov eax, 1
jmp 0x41f8bd
mov eax, 0
test eax, eax
je 0x41f93a
mov ebx, dword [ebp - 0x88]
call fcn.00403329
mov eax, 1
cmp eax, ecx
jl 0x41f8f0
push 0x5e07
push 0x401371e
push 1
call fcn.004487ee
add esp, 0xc
shl eax, 2
add ebx, eax
mov dword [ebp - 0xec], ebx
mov ebx, dword [ebp - 0xec]
mov eax, dword [ebx]
test eax, eax
je 0x41f91c
push eax
mov ebx, eax
call fcn.00401873
inc eax
push eax
call fcn.004487dc
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
test ebx, ebx
je 0x41f92f
push ebx
call fcn.004487e2
add esp, 4
pop eax
mov ebx, dword [ebp + 0x10]
mov dword [ebx], eax
jmp 0x41f989
mov eax, 0x518000
mov dword [ebp - 0xec], eax
lea eax, [ebp - 0xec]
push eax
call fcn.00403cef
mov dword [ebp - 0xf0], eax
mov ebx, dword [ebp - 0xec]
test ebx, ebx
je 0x41f96a
push ebx
call fcn.004487e2
add esp, 4
mov eax, dword [ebp - 0xf0]
push eax
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
test ebx, ebx
je 0x41f983
push ebx
call fcn.004487e2
add esp, 4
pop eax
mov ebx, dword [ebp + 0x10]
mov dword [ebx], eax
push 0xa27ea4
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x28]
test eax, eax
je 0x41f9b4
push 0xa27ea4
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0xc]
jmp 0x41f9b4
dec dword [0xa27f24]
fld qword [0xa27f28]
fadd qword [0x5018a1]
fstp qword [0xa27f28]
fld dword [0xa27f30]
fadd qword [0x501880]
fstp qword [ebp - 0xf0]
fld qword [ebp - 0xf0]
fstp dword [ebp - 0xf4]
mov eax, dword [ebp - 0xf4]
mov dword [0xa27f30], eax
mov eax, dword [0xa27f34]
and eax, 0xff
mov dword [ebp - 0xf0], eax
fild dword [ebp - 0xf0]
fstp qword [ebp - 0xf0]
fld qword [ebp - 0xf0]
fadd qword [0x50176f]
fstp qword [ebp - 0xf8]
fld qword [ebp - 0xf8]
call fcn.00401c9b
mov byte [0xa27f34], al
push 0x80000005
push 0
mov eax, dword [0xa27f48]
test eax, eax
jne 0x41fa48
mov eax, 0x501676
push eax
push 1
mov ebx, 0x448d10
call fcn.004487d6
add esp, 0x10
mov dword [ebp - 0xf0], eax
cmp dword [ebp - 0xf0], 0
jne 0x41fad7
mov eax, 0x501676
test eax, eax
je 0x41fa8a
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.004487dc
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [0xa27f74]
test ebx, ebx
je 0x41fa9e
push ebx
call fcn.004487e2
add esp, 4
pop eax
mov dword [0xa27f74], eax
mov eax, 0x5015f1
push eax
mov ebx, dword [0xa27f4c]
test ebx, ebx
je 0x41fabd
push ebx
call fcn.004487e2
add esp, 4
pop eax
mov dword [0xa27f4c], eax
mov dword [0xa27f54], 0
mov dword [0xa27f58], 0
mov ebx, dword [ebp - 0x88]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x41faf8
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x41faf4
imul eax, dword [ebx]
jmp 0x41fae9
mov ecx, eax
test ecx, ecx
je 0x41fb17
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x41fb10
push ebx
push eax
call fcn.004487e2
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x41fafe
call fcn.004487e2
add esp, 4
mov eax, 0x501676
mov dword [ebp - 0x88], eax
push 0x80000005
push 0
mov eax, dword [ebp - 0x74]
test eax, eax
jne 0x41fb3d
mov eax, 0x501676
push eax
push 1
mov ebx, 0x448d10
call fcn.004487d6
add esp, 0x10
push eax
call fcn.00423365
mov dword [ebp - 0xf0], eax
mov eax, dword [ebp - 0xf0]
push eax
mov ebx, dword [ebp - 0x74]
test ebx, ebx
je 0x41fb73
push ebx
call fcn.004487e2
add esp, 4
pop eax
mov dword [ebp - 0x74], eax
push 0x80000004
push 0
mov eax, dword [ebp - 0x40]
test eax, eax
jne 0x41fb8a
mov eax, 0x5015f1
push eax
push 1
mov ebx, 0x448cf0
call fcn.004487d6
add esp, 0x10
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x44a130
call fcn.004487d6
add esp, 0x10
mov dword [ebp - 0xf0], eax
mov eax, dword [ebp - 0xf0]
push eax
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x41fbd4
push ebx
call fcn.004487e2
add esp, 4
pop eax
mov dword [ebp - 0x40], eax
push 0x80000005
push 0
mov eax, dword [ebp - 0x80]
test eax, eax
jne 0x41fbeb
mov eax, 0x501676
push eax
push 1
mov ebx, 0x448d10
call fcn.004487d6
add esp, 0x10
push eax
call fcn.00423365
mov dword [ebp - 0xf0], eax
mov eax, dword [ebp - 0xf0]
push eax
mov ebx, dword [ebp - 0x80]
test ebx, ebx
je 0x41fc21
push ebx
call fcn.004487e2
add esp, 4
pop eax
mov dword [ebp - 0x80], eax
push 0x80000004
push 0
mov eax, dword [ebp - 0xd4]
test eax, eax
jne 0x41fc3b
push eax
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x420107
push ebx
call fcn.004487e2
add esp, 4
mov ebx, dword [ebp - 0x24]
push ebx
call fcn.004487e2
add esp, 4
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x420123
push ebx
call fcn.004487e2
add esp, 4
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x420133
push ebx
call fcn.004487e2
add esp, 4
mov ebx, dword [ebp - 0x38]
test ebx, ebx
je 0x420143
push ebx
call fcn.004487e2
add esp, 4
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x420153
push ebx
call fcn.004487e2
add esp, 4
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x420163