Function at 0x414a53
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x54
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
mov dword [ebp - 0x24], 0
cmp dword [ebp + 8], 0
je 0x414ac3
push 8
push dword [ebp + 8]
call fcn.00410378
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0
je 0x414ac3
xor eax, eax
jmp 0x414ac8
mov eax, 1
test eax, eax
je 0x414ada
mov eax, 0
jmp 0x41539f
cmp dword [ebp + 0x14], 3
je 0x414b1a
cmp dword [ebp + 0x14], 2
je 0x414b1a
cmp dword [ebp + 0x14], 1
je 0x414b1a
cmp dword [ebp + 0x14], 9
je 0x414b1a
cmp dword [ebp + 0x14], 7
je 0x414b1a
cmp dword [ebp + 0x14], 5
je 0x414b1a
xor eax, eax
jmp 0x414b1f
mov eax, 1
test eax, eax
je 0x414b9d
fild dword [ebp + 0x10]
fstp qword [ebp - 0x2c]
fld qword [ebp - 0x2c]
fmul qword [0x6085f5]
fstp qword [ebp - 0x34]
fld qword [ebp - 0x34]
fadd qword [0x4378d8]
fstp qword [ebp - 0x3c]
mov dword [ebp - 0x40], esp
fld qword [ebp - 0x3c]
call fcn.004015cb
push eax
push 0x40
mov eax, 0x1a
call sub.Kernel32.dll_LocalAlloc
cmp dword [ebp - 0x40], esp
je 0x414b7c
push 0x2a0
push 0x40145da
push 6
call fcn.0041c20a
add esp, 0xc
mov dword [ebp - 4], eax
push 0
push 4
push dword [ebp - 4]
call fcn.004153a5
mov dword [ebp + 0x14], 3
jmp 0x414cf5
cmp dword [ebp + 0x14], 6
je 0x414bbf
cmp dword [ebp + 0x14], 8
je 0x414bbf
cmp dword [ebp + 0x14], 4
je 0x414bbf
xor eax, eax
jmp 0x414bc4
mov eax, 1
test eax, eax
je 0x414c57
fild dword [ebp + 0x10]
fstp qword [ebp - 0x2c]
fld qword [ebp - 0x2c]
fmul qword [0x6085f5]
fstp qword [ebp - 0x34]
fild dword [ebp + 0x10]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fmul qword [0x437874]
fstp qword [ebp - 0x44]
fld qword [ebp - 0x34]
fadd qword [ebp - 0x44]
fadd qword [0x4378d8]
fstp qword [ebp - 0x4c]
mov dword [ebp - 0x50], esp
fld qword [ebp - 0x4c]
call fcn.004015cb
push eax
push 0x40
mov eax, 0x1a
call sub.Kernel32.dll_LocalAlloc
cmp dword [ebp - 0x50], esp
je 0x414c36
push 0x424
push 0x40145da
push 6
call fcn.0041c20a
add esp, 0xc
mov dword [ebp - 4], eax
push 0
push 4
push dword [ebp - 4]
call fcn.004153a5
mov dword [ebp + 0x14], 4
jmp 0x414cf5
cmp dword [ebp + 0x14], 0xa
je 0x414c6f
cmp dword [ebp + 0x14], 0xb
je 0x414c6f
xor eax, eax
jmp 0x414c74
mov eax, 1
test eax, eax
je 0x414ceb
fild dword [ebp + 0x10]
fstp qword [ebp - 0x2c]
fld qword [ebp - 0x2c]
fmul qword [0x6085f5]
fstp qword [ebp - 0x34]
fld qword [ebp - 0x34]
fadd qword [0x4378d8]
fstp qword [ebp - 0x3c]
mov dword [ebp - 0x40], esp
fld qword [ebp - 0x3c]
call fcn.004015cb
push eax
push 0x40
mov eax, 0x1a
call sub.Kernel32.dll_LocalAlloc
cmp dword [ebp - 0x40], esp
je 0x414cd1
push 0x54b
push 0x40145da
push 6
call fcn.0041c20a
add esp, 0xc
mov dword [ebp - 4], eax
push 1
push 4
push dword [ebp - 4]
call fcn.004153a5
jmp 0x414cf5
mov eax, 0
jmp 0x41539f
push 8
push dword [ebp + 8]
call fcn.00410378
push eax
push 8
push dword [ebp - 4]
call fcn.004153a5
mov eax, dword [ebp + 0x10]
xor ecx, ecx
push eax
lea eax, [ebp - 8]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x41526a
fild dword [ebp - 8]
fstp qword [ebp - 0x2c]
fld qword [ebp - 0x2c]
fild dword [ebp + 0xc]
fstp qword [ebp - 0x34]
fadd qword [ebp - 0x34]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fsub qword [0x43751d]
fstp qword [ebp - 0x44]
fld qword [ebp - 0x44]
fmul qword [0x6085f5]
fstp qword [ebp - 0x4c]
fld qword [ebp - 0x4c]
fsub qword [0x437874]
fstp qword [ebp - 0x54]
fld qword [ebp - 0x54]
call fcn.004015cb
mov dword [ebp - 0xc], eax
fild dword [ebp + 8]
fstp qword [ebp - 0x2c]
fld qword [ebp - 0x2c]
fild dword [ebp - 0xc]
fstp qword [ebp - 0x34]
fadd qword [ebp - 0x34]
fadd qword [0x437874]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
call fcn.004015cb
push eax
call fcn.004153cb
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0
jne 0x414da9
jmp 0x41526a
push dword [ebp - 0xc]
push dword [ebp + 8]
call fcn.00410378
mov dword [ebp - 0x10], eax
cmp dword [ebp + 0x14], 3
jne 0x414e37
fild dword [ebp - 8]
fstp qword [ebp - 0x2c]
fld qword [ebp - 0x2c]
fmul qword [0x6085f5]
fstp qword [ebp - 0x34]
fld qword [ebp - 0x34]
fadd qword [0x437874]
fstp qword [ebp - 0x3c]
push 3
fld qword [ebp - 0x3c]
call fcn.004015cb
push eax
push dword [ebp - 4]
call fcn.004153a5
fild dword [ebp - 8]
fstp qword [ebp - 0x2c]
fld qword [ebp - 0x2c]
fmul qword [0x6085f5]
fstp qword [ebp - 0x34]
fld qword [ebp - 0x34]
fadd qword [0x6085f5]
fstp qword [ebp - 0x3c]
push 0
push dword [ebp - 0x10]
call fcn.00410378
push eax
fld qword [ebp - 0x3c]
call fcn.004015cb
push eax
push dword [ebp - 4]
call fcn.004153a5
jmp 0x415262
cmp dword [ebp + 0x14], 4
jne 0x414efd
fild dword [ebp - 8]
fstp qword [ebp - 0x2c]
fld qword [ebp - 0x2c]
fmul qword [0x6085fd]
fstp qword [ebp - 0x34]
fld qword [ebp - 0x34]
call fcn.004015cb
mov dword [ebp - 0x14], eax
fild dword [ebp - 0x14]
fstp qword [ebp - 0x2c]
fld qword [ebp - 0x2c]
fsub qword [0x437874]
fstp qword [ebp - 0x34]
push 4
fld qword [ebp - 0x34]
call fcn.004015cb
push eax
push dword [ebp - 4]
call fcn.004153a5
push 0
push dword [ebp - 0x10]
call fcn.00410378
push eax
push dword [ebp - 0x14]
push dword [ebp - 4]
call fcn.004153a5
fild dword [ebp - 0x14]
fstp qword [ebp - 0x2c]
fld qword [ebp - 0x2c]
fadd qword [0x437874]
fstp qword [ebp - 0x34]
push 4
fld qword [ebp - 0x34]
call fcn.004015cb
push eax
push dword [ebp - 4]
call fcn.004153a5
fild dword [ebp - 0x14]
fstp qword [ebp - 0x2c]
fld qword [ebp - 0x2c]
fadd qword [0x6085f5]
fstp qword [ebp - 0x34]
push 4
push dword [ebp - 0x10]
call fcn.00410378
push eax
fld qword [ebp - 0x34]
call fcn.004015cb
push eax
push dword [ebp - 4]
call fcn.004153a5
jmp 0x415262
push 0
push dword [ebp - 0x10]
call fcn.00410378
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
jne 0x414f84
fild dword [ebp - 8]
fstp qword [ebp - 0x2c]
fld qword [ebp - 0x2c]
fmul qword [0x6085f5]
fstp qword [ebp - 0x34]
fld qword [ebp - 0x34]
fadd qword [0x437874]
fstp qword [ebp - 0x3c]
push 3
fld qword [ebp - 0x3c]
call fcn.004015cb
push eax
push dword [ebp - 4]
call fcn.004153a5
fild dword [ebp - 8]
fstp qword [ebp - 0x2c]
fld qword [ebp - 0x2c]
fmul qword [0x6085f5]
fstp qword [ebp - 0x34]
fld qword [ebp - 0x34]
fadd qword [0x6085f5]
fstp qword [ebp - 0x3c]
push 0
fld qword [ebp - 0x3c]
call fcn.004015cb
push eax
push dword [ebp - 4]
call fcn.004153a5
jmp 0x415262
fild dword [ebp - 0x10]
fstp qword [ebp - 0x2c]
fld qword [ebp - 0x2c]
fsub qword [0x6085f5]
fstp qword [ebp - 0x34]
push 0
fld qword [ebp - 0x34]
call fcn.004015cb
push eax
call fcn.00410378
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], 1
jne 0x414fba
sub dword [ebp - 0x10], 8
push 0
push dword [ebp - 0x10]
call fcn.00410378
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 1
jne 0x41514f
fild dword [ebp - 0x10]
fstp qword [ebp - 0x2c]
fld qword [ebp - 0x2c]
fadd qword [0x437874]
fstp qword [ebp - 0x34]
push 0
fld qword [ebp - 0x34]
call fcn.004015cb
push eax
call fcn.00410378
mov dword [ebp - 0x18], eax
fild dword [ebp - 0x18]
fstp qword [ebp - 0x2c]
fld qword [ebp - 0x2c]
fadd qword [0x6085f5]
fstp qword [ebp - 0x34]
mov dword [ebp - 0x38], esp
fld qword [ebp - 0x34]
call fcn.004015cb
push eax
push 0x40
mov eax, 0x1a
call sub.Kernel32.dll_LocalAlloc
cmp dword [ebp - 0x38], esp
je 0x415045
push 0x12ad
push 0x40145da
push 6
call fcn.0041c20a
add esp, 0xc
mov dword [ebp - 0x1c], eax
push 1
push 0
push dword [ebp - 0x1c]
call fcn.004153a5
push dword [ebp - 0x18]
push 4
push dword [ebp - 0x1c]
call fcn.004153a5
fild dword [ebp - 0x1c]
fstp qword [ebp - 0x2c]
fld qword [ebp - 0x2c]
fadd qword [0x6085f5]
fstp qword [ebp - 0x34]
fild dword [ebp - 0x10]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fadd qword [0x6085f5]
fstp qword [ebp - 0x44]
mov dword [ebp - 0x48], esp
push dword [ebp - 0x18]
fld qword [ebp - 0x44]
call fcn.004015cb
push eax
fld qword [ebp - 0x34]
call fcn.004015cb
push eax
mov eax, 0x2b
call sub.Kernel32.dll_RtlMoveMemory
cmp dword [ebp - 0x48], esp
je 0x4150cc
push 0x135d
push 0x40145da
push 6
call fcn.0041c20a
add esp, 0xc
fild dword [ebp - 8]
fstp qword [ebp - 0x2c]
fld qword [ebp - 0x2c]
fmul qword [0x6085f5]
fstp qword [ebp - 0x34]
fld qword [ebp - 0x34]
fadd qword [0x437874]
fstp qword [ebp - 0x3c]
push 0xb
fld qword [ebp - 0x3c]
call fcn.004015cb
push eax
push dword [ebp - 4]
call fcn.004153a5
fild dword [ebp - 8]
fstp qword [ebp - 0x2c]
fld qword [ebp - 0x2c]
fmul qword [0x6085f5]
fstp qword [ebp - 0x34]
fld qword [ebp - 0x34]
fadd qword [0x6085f5]
fstp qword [ebp - 0x3c]
fild dword [ebp - 0x1c]
fstp qword [ebp - 0x44]
fld qword [ebp - 0x44]
fadd qword [0x6085f5]
fstp qword [ebp - 0x4c]
fld qword [ebp - 0x4c]
call fcn.004015cb
push eax
fld qword [ebp - 0x3c]
call fcn.004015cb
push eax
push dword [ebp - 4]
call fcn.004153a5
jmp 0x415262
mov dword [ebp - 0x28], esp
push dword [ebp - 0x10]
mov eax, 0x2c
call sub.Kernel32.dll_lstrlenA
cmp dword [ebp - 0x28], esp
je 0x41517b
push 0x14ab
push 0x40145da
push 6
call fcn.0041c20a
add esp, 0xc
mov dword [ebp - 0x18], eax
fild dword [ebp - 0x18]
fstp qword [ebp - 0x2c]
fld qword [ebp - 0x2c]
fadd qword [0x43751d]
fstp qword [ebp - 0x34]
mov dword [ebp - 0x38], esp
fld qword [ebp - 0x34]
call fcn.004015cb
push eax
push 0x40
mov eax, 0x1a
call sub.Kernel32.dll_LocalAlloc
cmp dword [ebp - 0x38], esp
je 0x4151c7
push 0x1529
push 0x40145da
push 6
call fcn.0041c20a
add esp, 0xc
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x28], esp
push dword [ebp - 0x18]
push dword [ebp - 0x10]
push dword [ebp - 0x1c]
mov eax, 0x2b
call sub.Kernel32.dll_RtlMoveMemory
cmp dword [ebp - 0x28], esp
je 0x4151fc
push 0x154e
push 0x40145da
push 6
call fcn.0041c20a
add esp, 0xc
fild dword [ebp - 8]
fstp qword [ebp - 0x2c]
fld qword [ebp - 0x2c]
fmul qword [0x6085f5]
fstp qword [ebp - 0x34]
fld qword [ebp - 0x34]
fadd qword [0x437874]
fstp qword [ebp - 0x3c]
push 0xa
fld qword [ebp - 0x3c]
call fcn.004015cb
push eax
push dword [ebp - 4]
call fcn.004153a5
fild dword [ebp - 8]
fstp qword [ebp - 0x2c]
fld qword [ebp - 0x2c]
fmul qword [0x6085f5]
fstp qword [ebp - 0x34]
fld qword [ebp - 0x34]
fadd qword [0x6085f5]
fstp qword [ebp - 0x3c]
push dword [ebp - 0x1c]
fld qword [ebp - 0x3c]
call fcn.004015cb
push eax
push dword [ebp - 4]
call fcn.004153a5
pop eax
pop ebx
pop ecx
jmp 0x414d1c
add esp, 0xc
dec dword [ebp - 8]
cmp dword [ebp + 0x14], 4
jne 0x415297
fild dword [ebp - 8]
fstp qword [ebp - 0x2c]
fld qword [ebp - 0x2c]
fmul qword [0x43753e]
fstp qword [ebp - 0x34]
fld qword [ebp - 0x34]
call fcn.004015cb
mov dword [ebp - 8], eax
push dword [ebp - 8]
push 0
push dword [ebp - 4]
call fcn.004153a5
push 0x10
push dword [ebp + 8]
call fcn.00410378
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 1
jne 0x4152ee
push 0xc
push dword [ebp + 8]
call fcn.00410378
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 1
jne 0x4152e7
mov dword [ebp - 0x14], 4
jmp 0x4152ee
mov dword [ebp - 0x14], 0
push 0x80000006
push 0
push 0x4157f5
push 1
mov ebx, 0x9dc
call sub.wmvert.dll_wm_ToInt
add esp, 0x10
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x24]
push eax
call fcn.00411e3a
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x30], esp
push dword [ebp - 0x2c]
push dword [ebp - 0x14]
push dword [ebp - 4]
push dword [ebp - 0x28]
push 0
push 0
mov eax, 0x22
call sub.Kernel32.dll_CreateThread
cmp dword [ebp - 0x30], esp
je 0x41535a
push 0x1b31
push 0x40145da
push 6
call fcn.0041c20a
add esp, 0xc
mov dword [ebp - 0x20], eax
push 0x18
push dword [ebp + 8]
call fcn.00410378
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 1
jne 0x415397
push 0x14
push dword [ebp + 8]
call fcn.00410378
mov dword [ebp - 0x28], eax
push dword [ebp - 0x24]
push 0
push dword [ebp - 0x28]
call fcn.004153a5
mov eax, dword [ebp - 0x20]
jmp 0x41539f
mov esp, ebp
pop ebp
ret 0x10