Function at 0x49fe88
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xa0
cmp dword [0x6ffecc], 0
push ebx
push esi
push edi
mov ebx, ecx
jne 0x4a0496
fldz
push ecx
fstp dword [esp]
call fcn.0049efb2
mov ecx, ebx
call fcn.0040f217
test eax, eax
jne 0x4a0496
mov eax, dword [ebx + 0x240]
mov ecx, ebx
mov dword [ebp - 0x10], eax
call fcn.004a4d2b
mov dword [ebp - 8], eax
push ebx
fild dword [ebp - 8]
mov ecx, ebx
fstp dword [ebp - 8]
fld dword [ebp - 8]
fmul dword [0x7501e0]
fstp dword [ebp - 4]
call fcn.004b1a84
mov dword [ebp - 8], eax
mov ecx, ebx
fild dword [ebp - 8]
fstp dword [ebp - 8]
fld dword [ebp - 4]
fdiv dword [ebp - 8]
fstp dword [ebp - 8]
call fcn.004a4d32
mov dword [ebp - 4], eax
push ebx
fild dword [ebp - 4]
mov ecx, ebx
fstp dword [ebp - 4]
fld dword [ebp - 4]
fmul dword [0x7501e0]
fstp dword [ebp - 0xc]
call fcn.004b1aaf
mov dword [ebp - 4], eax
mov ecx, ebx
fild dword [ebp - 4]
fstp dword [ebp - 4]
fld dword [ebp - 0xc]
fdiv dword [ebp - 4]
fstp dword [ebp - 4]
call fcn.0049ebdf
mov ecx, ebx
call fcn.004a940d
mov ecx, ebx
call fcn.0049ecaf
mov ecx, ebx
call fcn.004a26d9
test eax, eax
je 0x49ff63
push 0
push 2
push 1
lea ecx, [ebx + 0x410]
call fcn.005984f0
lea ecx, [ebx + 0x410]
call fcn.00597962
push dword [ebx + 0x240]
mov ecx, ebx
call fcn.00438f30
cmp dword [ebx + 0xc], 0xffffffff
je 0x49ff8c
push ebx
mov ecx, 0x719f50
call fcn.004664e5
cmp dword [ebx + 0x14], 0xffff
je 0x49ffa0
push ebx
mov ecx, 0x719e90
call fcn.00468e0e
mov esi, 0x6fe7c8
push ebx
mov ecx, esi
call fcn.004b6391
mov edi, dword [ebp + 0xc]
test edi, edi
jl 0x49ffd5
push ebx
mov ecx, esi
call fcn.004b3e6e
mov eax, dword [ebp + 8]
push ebx
mov ecx, esi
mov dword [ebx + 0x240], edi
mov dword [ebx + 0x23c], eax
call fcn.004b3ea2
jmp 0x49ffde
mov eax, dword [ebp + 8]
mov dword [ebx + 0x23c], eax
fld dword [ebx + 0x2c]
push ecx
fstp dword [esp]
fld dword [ebx + 0x28]
push ecx
mov ecx, dword [0x715924]
fstp dword [esp]
call fcn.004973db
push dword [ebp + 8]
and dword [ebx + 0x758], 0
fstp dword [ebx + 0x30]
mov ecx, ebx
call fcn.004b165a
push ebx
mov ecx, esi
call fcn.004b632f
mov eax, dword [ebx + 0x74]
mov edi, 0x73fea0
mov ecx, edi
push dword [eax + 0x50]
call fcn.0055701f
mov dword [ebx + 0x2e0], eax
mov eax, dword [ebx + 0x74]
mov eax, dword [eax + 0x50]
sub eax, 0
je 0x4a0051
dec eax
dec eax
je 0x4a004d
dec eax
je 0x4a0049
dec eax
dec eax
je 0x4a0045
push 0xa
jmp 0x4a0053
push 9
jmp 0x4a0053
push 7
jmp 0x4a0053
push 8
jmp 0x4a0053
push 6
call fcn.0047c49b
mov dword [ebp + 0xc], eax
mov eax, dword [ebx + 0x74]
pop ecx
push dword [eax + 0x1c]
mov ecx, edi
call fcn.005571da
lea ecx, [ebp - 0x44]
mov edi, eax
call fcn.0066b08d
add edi, 0x1c
lea ecx, [ebp - 0x44]
push edi
call fcn.0066c4be
mov ecx, 0x6de0e0
call fcn.005b32ca
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x48]
lea edi, [ebx + 0x410]
push 0x6dd848
push eax
mov ecx, edi
mov dword [ebp - 0x48], 0x70d290
call fcn.00597872
test eax, eax
jne 0x4a011c
sub esp, 0x18
lea esi, [ebp - 0x44]
lea eax, [ebp - 0x28]
push 6
pop ecx
mov edi, esp
push str.Model_Initialization_Failed_:___s_
rep movsd dword es:[edi], dword [esi]
push eax
call fcn.0066b0d0
call fcn.0067f5ad
pop ecx
pop ecx
mov ecx, esp
push 0x894
call fcn.0066b1cd
sub esp, 0x18
mov eax, esp
push str.C:ProjectsSamuraiCodeUnit.cpp
push eax
call fcn.0066b0d0
pop ecx
pop ecx
lea ecx, [ebp - 0x28]
call fcn.0066c552
push eax
call fcn.0067f4fe
add esp, 0x34
call sub.kernel32.dll_IsDebuggerPresent
test eax, eax
je 0x4a0115
int3
push 1
call fcn.006a16bc
push 1
mov ecx, edi
call fcn.005982c4
push ebx
mov ecx, esi
call fcn.004b5a90
mov ecx, ebx
call fcn.004aafa7
fadd dword [ebx + 0x30]
push 1
mov ecx, ebx
fstp dword [ebx + 0x30]
call fcn.004aaa35
push 0
push 0xffffffffffffffff
push 0xa
push 1
mov ecx, ebx
call fcn.004aaaa3
push ebx
mov ecx, ebx
call fcn.004aae96
push ebx
mov ecx, ebx
call fcn.004b1798
mov dword [ebp - 0xc], eax
push ecx
fild dword [ebp - 0xc]
mov ecx, ebx
fstp dword [ebp - 0xc]
fld dword [ebp - 0xc]
fstp dword [esp]
call fcn.00438eff
push dword [ebx + 0x240]
mov ecx, ebx
call fcn.0043199e
push ebx
mov ecx, ebx
call fcn.004b1a84
shl eax, 0x10
push ebx
mov ecx, ebx
mov dword [ebx + 0x400], eax
call fcn.004b1aaf
fld dword [ebp - 8]
fcomp dword [0x6b23a4]
shl eax, 0x10
mov dword [ebx + 0x404], eax
fnstsw ax
sahf
jbe 0x4a01de
fld dword [0x6b2d9c]
fmul dword [ebp - 8]
fadd dword [0x6b23b4]
call fcn.006a1158
push eax
push dword [ebx + 0x400]
call fcn.006728fc
pop ecx
mov dword [ebx + 0x400], eax
pop ecx
fld dword [0x6b2d9c]
fmul dword [ebp - 4]
fadd dword [0x6b23b4]
call fcn.006a1158
push eax
push dword [ebx + 0x404]
call fcn.006728fc
pop ecx
mov dword [ebx + 0x404], eax
pop ecx
lea ecx, [ebp - 0x60]
call fcn.00654d78
lea eax, [ebp - 0x60]
mov ecx, ebx
push eax
call fcn.004a4f49
lea edi, [ebx + 0x40]
lea esi, [ebp - 0x60]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea edi, [ebx + 0x4c]
lea esi, [ebp - 0x60]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
push ebx
mov ecx, 0x719f50
movsd dword es:[edi], dword [esi]
call fcn.00466487
mov ecx, ebx
call fcn.004172cf
and ax, 0x3fff
mov ecx, 0x719e90
push eax
push ebx
call fcn.00468be1
mov ecx, ebx
call fcn.004ab03b
test eax, eax
je 0x4a0389
mov eax, dword [ebx + 0x23c]
cmp eax, 0x51
je 0x4a027f
cmp eax, 0x4f
je 0x4a027f
lea ecx, [ebx + 0x410]
call fcn.0059a1f9
mov dword [ebx + 0x35c], eax
jmp 0x4a02c0
cmp dword [ebp + 8], 0x51
jne 0x4a02a0
mov ecx, dword [ebx + 0x364]
lea eax, [ebx + 0x364]
cmp ecx, 5
jl 0x4a02c0
cmp ecx, 0xa
jg 0x4a02c0
add ecx, 0xfffffffb
jmp 0x4a02be
cmp dword [ebp + 8], 0x4f
jne 0x4a02c0
mov ecx, dword [ebx + 0x364]
lea eax, [ebx + 0x364]
test ecx, ecx
jl 0x4a02c0
cmp ecx, 4
jg 0x4a02c0
add ecx, 5
mov dword [eax], ecx
mov eax, dword [ebx + 0x74]
cmp dword [eax + 0x50], 4
jne 0x4a02f5
mov eax, dword [ebx + 0x23c]
cmp eax, 0x42
je 0x4a02f5
cmp eax, 0x44
je 0x4a02f5
cmp eax, 0x82
je 0x4a02f5
cmp eax, 0x83
je 0x4a02f5
cmp eax, 0x53
je 0x4a02f5
cmp eax, 0x54
jne 0x4a0389
lea ecx, [ebp - 0x28]
call fcn.0066b08d
mov ecx, 0x6de0e0
call fcn.005b32ca
test eax, eax
mov eax, dword [ebx + 0x74]
jne 0x4a0313
add eax, 0x38
jmp 0x4a0316
add eax, 0x20
push eax
lea ecx, [ebp - 0x28]
call fcn.0066c4be
push dword [ebx + 0x240]
mov ecx, 0x73e890
call fcn.0046fc1a
test eax, eax
je 0x4a034c
push dword [eax + 0x78]
lea eax, [ebp - 0x28]
mov ecx, 0x715a88
push eax
call fcn.00492137
mov dword [ebx + 0x360], eax
jmp 0x4a0381
mov eax, dword [0x75020c]
mov ecx, 0x715a88
mov dword [0x750210], eax
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.00492137
mov dword [ebx + 0x360], eax
inc dword [0x75020c]
cmp dword [0x75020c], 8
jb 0x4a0381
and dword [0x75020c], 0
lea ecx, [ebp - 0x28]
call fcn.0066b24c
push dword [ebp + 0xc]
call fcn.0047c49b
pop ecx
push ebx
mov ecx, ebx
call fcn.004b3345
cmp eax, 0xffffffff
je 0x4a03a7
push eax
mov ecx, ebx
call fcn.004a948e
mov eax, dword [ebx + 0x23c]
cmp eax, 0x51
je 0x4a03b7
cmp eax, 0x4f
jne 0x4a0402
mov ecx, ebx
call fcn.004a26d9
test eax, eax
je 0x4a03d3
push 1
push 2
push 1
lea ecx, [ebx + 0x410]
call fcn.005984f0
push dword [ebx + 0x364]
lea ecx, [ebx + 0x410]
call fcn.0059a438
mov ecx, ebx
call fcn.004ab03b
test eax, eax
je 0x4a0402
push dword [ebx + 0x360]
mov ecx, eax
push dword [ebx + 0x35c]
call fcn.0063b8c5
push 1
mov ecx, ebx
call fcn.004ab0f3
lea ecx, [ebp - 0xa0]
call fcn.0067076d
lea eax, [ebx + 0x28]
lea ecx, [ebp - 0xa0]
push eax
lea eax, [ebx + 0x18]
push eax
call fcn.00670dcc
push 0xffffffffffffffff
mov esi, 0x73f470
push 0
push 0
mov ecx, esi
call fcn.006418a4
lea edi, [ebx + 0x410]
push eax
mov ecx, edi
call fcn.00597df6
lea eax, [ebp - 0xa0]
mov ecx, esi
push eax
call fcn.006418a4
push eax
mov ecx, edi
call fcn.005980fb
push dword [ebp - 0x10]
mov esi, 0x73dfc8
mov ecx, esi
call fcn.00438c95
push dword [ebx + 0x240]
mov ecx, esi
call fcn.00438c95
lea ecx, [ebp - 0xa0]
call fcn.0052c994
lea ecx, [ebp - 0x60]
call fcn.0052c994
lea ecx, [ebp - 0x44]
call fcn.0066b24c
pop edi
pop esi
pop ebx
leave
ret 8