Function at 0x1000f020
Capabilities:
Create process on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1006f710
mov eax, dword fs:[0]
push eax
mov eax, 0x152c
call fcn.10045ab0
mov eax, dword [0x100ae940]
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
cmp byte [0x100b104d], 0
jne 0x1000f067
call fcn.1000eb50
mov byte [0x100b104d], 1
push dword [0x100ae4f0]
call fcn.10042e80
add esp, 4
test al, al
je 0x1000f094
mov eax, dword [0x100b0fa8]
cmp byte [eax], 0
je 0x1000f094
cmp byte [0x100b1084], 0
sete al
mov byte [0x100b1084], al
jmp 0x1000f099
mov al, byte [0x100b1084]
cmp byte [0x100ae4f4], 0
je 0x1000f10b
mov ecx, dword [0x100b1070]
test al, al
je 0x1000f0d0
cmp dword [ecx], 1
jne 0x1000f0c8
mov eax, dword [0x100b1028]
mov byte [0x100b1098], 1
or dword [eax], 0x1000
mov al, byte [0x100b1084]
test al, al
jne 0x1000f180
cmp byte [0x100b1098], 0
je 0x1000f0f5
cmp dword [ecx], 1
jne 0x1000f0f5
mov eax, dword [0x100b1028]
mov byte [0x100b1098], 0
and dword [eax], 0xffffefff
mov al, byte [0x100b1084]
test al, al
jne 0x1000f180
mov eax, dword [0x100b1020]
and dword [eax + 4], 0x7fffffff
jmp 0x1000f180
mov edx, dword [0x100b1070]
test al, al
je 0x1000f121
cmp dword [edx], 1
jne 0x1000f121
mov esi, 0x400
jmp 0x1000f123
xor esi, esi
mov eax, dword [0x100b1020]
mov ecx, dword [eax]
and ecx, 0xfffffbff
or ecx, esi
mov dword [eax], ecx
cmp byte [0x100b1084], 0
je 0x1000f149
cmp dword [edx], 1
jne 0x1000f149
mov eax, 0x20000
jmp 0x1000f14b
xor eax, eax
and ecx, 0xfffdffff
or ecx, eax
mov eax, dword [0x100b1020]
mov dword [eax], ecx
cmp byte [0x100b1084], 0
je 0x1000f16f
cmp dword [edx], 1
jne 0x1000f16f
mov eax, 0x80000
jmp 0x1000f171
xor eax, eax
and ecx, 0xfff7ffff
or ecx, eax
mov eax, dword [0x100b1020]
mov dword [eax], ecx
call fcn.100356b0
call fcn.100361d0
call fcn.1001ea70
cmp byte [0x100b1085], 0
je 0x1000f2df
cmp byte [0x100b1084], 0
mov ecx, 0xc02a1
mov eax, 0xa1
cmove eax, ecx
push eax
push 0
push str.Battle_Stats
call fcn.100131e0
mov eax, dword [0x100b0fa4]
push dword [eax + 0x1776174]
push 0x1007439c
push str.Alerts
call fcn.1003d820
mov eax, dword [0x100b0fa4]
add esp, 0x18
movss xmm1, dword [eax + 0x1776204]
movaps xmm0, xmm1
divss xmm0, dword [0x10074410]
movss dword [ebp - 0x1524], xmm0
cvtps2pd xmm0, xmm1
movsd qword [ebp - 0x1530], xmm0
fld qword [ebp - 0x1530]
fld qword [0x10074408]
call fcn.10053ab0
fstp qword [ebp - 0x1530]
movsd xmm0, qword [ebp - 0x1530]
sub esp, 8
cvtpd2ps xmm0, xmm0
movss dword [ebp - 0x152c], xmm0
fld dword [ebp - 0x152c]
fstp qword [esp]
call fcn.10053ad0
fstp dword [ebp - 0x152c]
fld dword [ebp - 0x1524]
fstp qword [esp]
call fcn.10053ad0
movss xmm1, dword [ebp - 0x152c]
cvtps2pd xmm1, xmm1
fstp dword [ebp - 0x1524]
movss xmm0, dword [ebp - 0x1524]
movsd qword [esp], xmm1
sub esp, 8
cvtps2pd xmm0, xmm0
movsd qword [esp], xmm0
push str._02.0f:_02.0f
push str.Battle_Timer
call fcn.1003d820
mov eax, dword [0x100b0fa4]
mov esi, str.true
mov ecx, esi
mov edi, str.false
cmp byte [eax + 0x1777de0], 0
cmove ecx, edi
push ecx
push 0x100743c8
push str.In_Battle
call fcn.1003d820
mov eax, dword [0x100b0fa4]
cmp byte [eax + 0x1776218], 0
cmove esi, edi
push esi
push 0x100743c8
push str.Took_Damage
call fcn.1003d820
add esp, 0x30
call fcn.10016ed0
cmp byte [0x100b1084], 0
je 0x1000ffa6
cmp byte [0x100ae4f4], 0
je 0x1000f31a
mov eax, dword [0x100b1070]
xor ecx, ecx
mov edx, dword [0x100b1020]
mov esi, Ordinal_2
cmp dword [eax], 1
mov eax, dword [edx + 4]
cmove ecx, esi
and eax, 0x7fffffff
or ecx, eax
mov dword [edx + 4], ecx
push 0x20
push 0
push str.Mod_Menu
call fcn.100131e0
movss xmm0, dword [0x100ae4e8]
lea eax, [ebp - 0x1528]
movss dword [ebp - 0x1528], xmm0
movss xmm0, dword [0x100ae4ec]
push 0
push eax
movss dword [ebp - 0x1524], xmm0
call fcn.100232e0
add esp, 0x14
call fcn.10019510
push eax
lea ecx, [ebp - 0x1520]
call fcn.1000e3f0
push 0x20
push str.NOTITLE
call fcn.10037700
add esp, 8
test al, al
je 0x1000ff83
push 0
push 0
push str.Player
call fcn.10037ac0
add esp, 0xc
test al, al
je 0x1000f54d
push 0x10090248
push str.Enable_Sam
call fcn.100383d0
push 0x100b0fac
push str.Sam_Instant_Charges
call fcn.100383d0
push 0x10090249
push str.Sam_Face_Fix
call fcn.100383d0
lea eax, [ebp - 0x1528]
mov dword [ebp - 0x1528], 0
push eax
push str.Reload_styles
mov dword [ebp - 0x1524], 0
call fcn.10037b40
add esp, 0x20
test al, al
je 0x1000f3f8
call fcn.10008c80
push 0x100b1085
push str.Show_battle_stats
call fcn.100383d0
push 0xffffffffffffffff
push 4
push 0x100ae4d8
push 0x100b0fb0
push str.Player_Weapon_Effect
call fcn.10038d50
push 0xffffffffffffffff
push 0x2a
push 0x100ae430
push 0x100b105c
push str.Player_Name
call fcn.10038d50
add esp, 0x30
test al, al
je 0x1000f548
mov ecx, dword [0x100b105c]
push 1
cmp ecx, 0xa
jl 0x1000f4a1
mov eax, 0x66666667
imul ecx
mov eax, dword [0x100b0fa4]
sar edx, 2
add eax, 0x12b6cef
mov esi, edx
add edx, 0x30
push ecx
mov ecx, esp
shr esi, 0x1f
push eax
add esi, edx
call fcn.10003300
call fcn.10001600
movzx eax, al
add esp, 8
cmp eax, esi
je 0x1000f4be
mov eax, 0x66666667
imul dword [0x100b105c]
push 1
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
add al, 0x30
push eax
jmp 0x1000f4a3
push 0x30
mov eax, dword [0x100b0fa4]
push ecx
add eax, 0x12b6cef
mov ecx, esp
push eax
call fcn.10003300
call fcn.10001700
add esp, 0xc
mov esi, dword [0x100b105c]
mov eax, 0x66666667
imul esi
push 1
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
push ecx
mov ecx, esp
lea eax, [eax + eax*4]
add eax, eax
sub esi, eax
mov eax, dword [0x100b0fa4]
add eax, 0x12b6cf0
add esi, 0x30
push eax
call fcn.10003300
call fcn.10001600
movzx ecx, al
add esp, 8
cmp ecx, esi
je 0x1000f548
mov ebx, dword [0x100b105c]
mov eax, 0x66666667
imul ebx
push 1
sar edx, 2
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov al, cl
shl cl, 2
add al, cl
add al, al
sub bl, al
add bl, 0x30
mov al, bl
push eax
mov eax, dword [0x100b0fa4]
push ecx
add eax, 0x12b6cf0
mov ecx, esp
push eax
call fcn.10003300
call fcn.10001700
add esp, 0xc
call fcn.10039fc0
push 0
push 0
push str.Player_Info
call fcn.10037ac0
add esp, 0xc
test al, al
je 0x1000fa66
mov eax, dword [0x100b0ff8]
mov edi, dword [eax + 0x60]
test edi, edi
je 0x1000fa61
push dword [0x100b1094]
push str.Text_from_file:
call fcn.10041070
add esp, 4
mov dword [esp], 0x42c80000
call fcn.100200e0
push 0
push dword [0x100b107c]
call fcn.10009760
push eax
push str.Player_Model_ID:__X
call fcn.10041070
push 4
push dword [0x100b107c]
call fcn.10009760
push eax
push str.Player_Hair_ID:__X
call fcn.10041070
add esp, 0x1c
mov dword [esp + 4], 0xbf800000
mov dword [esp], 0
call fcn.10022760
push 0
push str._08X
push 0
push 0
push 0x100b1034
push 7
push str.Set_Hair_Id
call fcn.1003a180
add esp, 0x24
test al, al
je 0x1000f615
push dword [0x100b1034]
push 4
push dword [0x100b107c]
call fcn.1000a5b0
add esp, 0xc
push 8
push dword [0x100b107c]
call fcn.10009760
push eax
push str.Player_Visor_ID:__X
call fcn.10041070
add esp, 8
mov dword [esp + 4], 0xbf800000
mov dword [esp], 0
call fcn.10022760
push 0
push str._08X
push 0
push 0
push 0x100b1038
push 7
push str.Set_Visor_Id
call fcn.1003a180
add esp, 0x24
test al, al
je 0x1000f67d
push dword [0x100b1038]
push 8
push dword [0x100b107c]
call fcn.1000a5b0
add esp, 0xc
push 0xc
push dword [0x100b107c]
call fcn.10009760
push eax
push str.Player_Sheath_ID:__X
call fcn.10041070
add esp, 8
mov dword [esp + 4], 0xbf800000
mov dword [esp], 0
call fcn.10022760
push 0
push str._08X
push 0
push 0
push 0x100b103c
push 7
push str.Set_Sheath_Id
call fcn.1003a180
add esp, 0x24
test al, al
je 0x1000f6e5
push dword [0x100b103c]
push 0xc
push dword [0x100b107c]
call fcn.1000a5b0
add esp, 0xc
push 0x10
push dword [0x100b107c]
call fcn.10009760
push eax
push str.Player_Head_ID:__X
call fcn.10041070
add esp, 8
mov dword [esp + 4], 0xbf800000
mov dword [esp], 0
call fcn.10022760
push 0
push str._08X
push 0
push 0
push 0x100b1040
push 7
push str.Set_Head_Id
call fcn.1003a180
add esp, 0x24
test al, al
je 0x1000f74d
push dword [0x100b1040]
push 0x10
push dword [0x100b107c]
call fcn.1000a5b0
add esp, 0xc
mov eax, dword [0x100b0fa4]
add eax, 0x17e9ff4
push 0
push eax
call fcn.10009760
push eax
push str.Player_Weapon_ID:__X
call fcn.10041070
push dword [edi + 0x618]
lea esi, [edi + 0x618]
push str.Player_Current_Action__X
call fcn.10041070
add esp, 0x10
mov dword [esp + 4], 0xbf800000
mov dword [esp], 0
call fcn.10022760
push 2
push 0x10074098
push 0
push 0
push esi
push 5
push str.Set_Player_Action
call fcn.1003a180
push dword [edi + 0x61c]
lea esi, [edi + 0x61c]
push str.Player_Current_Action_ID
call fcn.10041690
add esp, 0x24
mov dword [esp + 4], 0xbf800000
mov dword [esp], 0
call fcn.10022760
push 0
push 0
push 0
push 0
push esi
push 4
push str.Set_action_Id
call fcn.1003a180
push 0x14
push dword [edi + 0x774]
call fcn.10009830
push eax
push str.Player_Current_Animation_ID
call fcn.10041690
push 0x14
push dword [edi + 0x774]
call fcn.10009830
push eax
push dword [edi + 0x75c]
call fcn.10008980
add esp, 0x44
push eax
push str.Player_Animation_Name:__s
call fcn.10041070
push dword [edi + 0x874]
push str.Player_Max_Health
call fcn.10041690
push dword [edi + 0x870]
push str.Player_Current_Health
call fcn.10041690
push 0
push 0
push 0
push 0
push 0x10093a98
push 4
push str.Set_Animation_For_Test
call fcn.1003a180
lea eax, [ebp - 0x1528]
mov dword [ebp - 0x1528], 0
push eax
push str.Call_Animation_by_ID
mov dword [ebp - 0x1524], 0
call fcn.10037b40
add esp, 0x3c
test al, al
je 0x1000f8cd
sub esp, 8
mov ecx, edi
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0xbf800000
push 0x8000000
sub esp, 8
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0x3e4ccccd
push 0
push dword [0x10093a98]
call fcn.1000e220
push 0
push 0
push 0
push 0
push 0x100b1048
push 4
push str.Set_Effect_ID_For_Test
call fcn.1003a180
lea eax, [ebp - 0x1528]
mov dword [ebp - 0x1528], 0
push eax
push str.Call_Effect_by_ID
mov dword [ebp - 0x1524], 0
call fcn.10037b40
add esp, 0x24
test al, al
je 0x1000f926
lea eax, [edi + 0x3470]
mov ecx, edi
push eax
push dword [0x100b1048]
call fcn.1000e160
call fcn.1003ecd0
mov eax, dword [0x100b0fa4]
mov edi, dword [eax + 0x19bff60]
test edi, edi
je 0x1000fa61
mov edi, dword [edi + 0x48]
test edi, edi
je 0x1000fa61
push dword [edi + 0x618]
lea esi, [edi + 0x618]
push str.Boss_Current_Action__X
call fcn.10041070
mov dword [esp + 4], 0xbf800000
mov dword [esp], 0
call fcn.10022760
push 2
push 0x10074098
push 0
push 0
push esi
push 5
push str.Set_Boss_Action
call fcn.1003a180
push dword [edi + 0x61c]
lea esi, [edi + 0x61c]
push str.Boss_Current_Action_ID
call fcn.10041690
add esp, 0x24
mov dword [esp + 4], 0xbf800000
mov dword [esp], 0
call fcn.10022760
push 0
push 0
push 0
push 0
push esi
push 4
push str.Set_Boss_Action_Id
call fcn.1003a180
push 0x14
push dword [edi + 0x774]
call fcn.10009830
push eax
push str.Boss_Current_Animation_ID
call fcn.10041690
push 0x14
push dword [edi + 0x774]
call fcn.10009830
push eax
push dword [edi + 0x75c]
call fcn.10008980
add esp, 0x44
push eax
push str.Boss_Animation_Name:__s
call fcn.10041070
push dword [edi + 0x874]
push str.Boss_Max_Health
call fcn.10041690
push dword [edi + 0x870]
lea esi, [edi + 0x870]
push str.Boss_Current_Health
call fcn.10041690
add esp, 0x10
mov dword [esp + 4], 0xbf800000
mov dword [esp], 0
call fcn.10022760
push 0
push 0
push 0
push 0
push esi
push 4
push str.Set_Boss_Health
call fcn.1003a180
add esp, 0x24
call fcn.10039fc0
push 0
push 0
push str.Enemies
call fcn.10037ac0
add esp, 0xc
test al, al
je 0x1000fad3
push 0
push 0
push 0
push 0
push 0x100b1090
push 5
push str.Boss_HP
call fcn.1003a180
lea eax, [ebp - 0x1528]
mov dword [ebp - 0x1528], 0
push eax
push str.Change_boss_HP
mov dword [ebp - 0x1524], 0
call fcn.10037b40
add esp, 0x24
test al, al
je 0x1000face
push dword [0x100b1090]
call fcn.10005180
add esp, 4
call fcn.10039fc0
push 0
push 0
push str.Missions
call fcn.10037ac0
add esp, 0xc
test al, al
je 0x1000fd7b
push 0xffffffffffffffff
push 0xa
push 0x10093a9c
push 0x100b1050
push str.Mission
call fcn.10038d50
add esp, 0x14
test al, al
je 0x1000fb42
mov ecx, dword [0x100b1050]
mov eax, ecx
shl eax, 4
sub eax, ecx
mov dword [0x100b1058], 0
mov edx, dword [eax*4 + 0x10093ac8]
imul eax, ecx, 0xe10
mov dword [0x100b1064], edx
mov eax, dword [eax + 0x10093e50]
mov dword [0x100b106c], eax
jmp 0x1000fb48
mov edx, dword [0x100b1064]
push 0
push edx
push str.Phase
call fcn.10037030
add esp, 0xc
test al, al
je 0x1000fc30
mov edx, dword [0x100b1050]
xor esi, esi
mov eax, edx
shl eax, 4
sub eax, edx
add eax, esi
mov eax, dword [eax*4 + 0x10093ac8]
cmp eax, 0x100714a0
je 0x1000fc2b
test eax, eax
je 0x1000fc2b
cmp dword [0x100b1064], eax
lea ecx, [ebp - 0x1530]
push ecx
sete bl
mov dword [ebp - 0x1530], 0
push 0
mov byte [ebp - 0x1524], bl
push dword [ebp - 0x1524]
mov dword [ebp - 0x152c], 0
push eax
call fcn.1003e810
mov edx, dword [0x100b1050]
add esp, 0x10
test al, al
je 0x1000fc12
mov eax, edx
mov dword [0x100b1054], esi
shl eax, 4
sub eax, edx
mov dword [0x100b1058], 0
add eax, esi
mov eax, dword [eax*4 + 0x10093ac8]
mov dword [0x100b1064], eax
mov eax, edx
shl eax, 4
sub eax, edx
lea ecx, [esi + eax*2]
mov eax, ecx
shl eax, 4
sub eax, ecx
mov eax, dword [eax*8 + 0x10093e50]
mov dword [0x100b106c], eax
test bl, bl
je 0x1000fc21
call fcn.10023050
mov edx, dword [0x100b1050]
inc esi
cmp esi, 0xf
jl 0x1000fb68
call fcn.10039e60
push 0
push dword [0x100b106c]
push str.Sub_Phase
call fcn.10037030
add esp, 0xc
test al, al
je 0x1000fd15
xor esi, esi
nop
mov ecx, dword [0x100b1050]
mov eax, dword [0x100b1054]
shl ecx, 4
sub ecx, dword [0x100b1050]
lea ecx, [eax + ecx*2]
mov eax, ecx
shl eax, 4
sub eax, ecx
lea eax, [esi + eax*2]
mov eax, dword [eax*4 + 0x10093e50]
cmp eax, 0x100714a0
je 0x1000fd10
test eax, eax
je 0x1000fd10
cmp dword [0x100b106c], eax
lea ecx, [ebp - 0x1530]
push ecx
sete bl
mov dword [ebp - 0x1530], 0
push 0
mov byte [ebp - 0x1524], bl
push dword [ebp - 0x1524]
mov dword [ebp - 0x152c], 0
push eax
call fcn.1003e810
add esp, 0x10
test al, al
je 0x1000fcfd
mov ecx, dword [0x100b1050]
mov eax, dword [0x100b1054]
shl ecx, 4
sub ecx, dword [0x100b1050]
mov dword [0x100b1058], esi
lea ecx, [eax + ecx*2]
mov eax, ecx
shl eax, 4
sub eax, ecx
lea eax, [esi + eax*2]
mov eax, dword [eax*4 + 0x10093e50]
mov dword [0x100b106c], eax
test bl, bl
je 0x1000fd06
call fcn.10023050
inc esi
cmp esi, 0x1e
jl 0x1000fc50
call fcn.10039e60
push 0x100b104c
push str.Is_DLC_Phase__for_Sam_and_Wolf_only__
call fcn.100383d0
lea eax, [ebp - 0x1528]
mov dword [ebp - 0x1528], 0
push eax
push str.Change_mission
mov dword [ebp - 0x1524], 0
call fcn.10037b40
add esp, 0x10
test al, al
je 0x1000fd76
mov bl, byte [0x100b104c]
mov esi, dword [0x100b106c]
push 0x10
push 0
push dword [0x100b1064]
call fcn.1004e603
push ebx
push esi
push eax
call fcn.10005220
add esp, 0x18
call fcn.10039fc0
push 0
push 0
push str.Menu
call fcn.10037ac0
add esp, 0xc
test al, al
je 0x1000ff7e
push 0x100ae4f0
push str.Menu_Key:
call fcn.10042c00
push 0x100ae4f4
push str.Pause_game_when_shown
call fcn.100383d0
add esp, 0x10
test al, al
je 0x1000fe62
mov eax, dword [0x100b1070]
cmp dword [eax], 1
jne 0x1000fe62
mov edx, dword [0x100b1028]
movzx ecx, byte [0x100ae4f4]
shl ecx, 0xc
xor ecx, dword [edx]
and ecx, 0x1000
xor dword [edx], ecx
mov edx, dword [0x100b1020]
movzx ecx, byte [0x100ae4f4]
shl ecx, 0x1f
mov eax, dword [edx + 4]
and eax, 0x7fffffff
or ecx, eax
mov eax, 0x400
mov dword [edx + 4], ecx
xor edx, edx
cmp byte [0x100ae4f4], dl
mov ecx, dword [0x100b1020]
cmove edx, eax
xor esi, esi
mov eax, dword [ecx]
and eax, 0xfffffbff
or edx, eax
mov eax, 0x20000
mov dword [ecx], edx
cmp byte [0x100ae4f4], 0
cmove esi, eax
mov eax, dword [0x100b1020]
and edx, 0xfffdffff
xor ecx, ecx
or esi, edx
mov dword [eax], esi
mov eax, 0x80000
cmp byte [0x100ae4f4], cl
cmove ecx, eax
mov eax, dword [0x100b1020]
and esi, 0xfff7ffff
or ecx, esi
mov dword [eax], ecx
lea eax, [ebp - 0x1528]
mov dword [ebp - 0x1528], 0
push eax
push str.Save_Config
mov dword [ebp - 0x1524], 0
call fcn.10037b40
add esp, 8
test al, al
je 0x1000fe98
call fcn.10009bf0
call fcn.1000ffe0
lea eax, [ebp - 0x1528]
mov dword [ebp - 0x1528], 0
push eax
push str.Load_Config
mov dword [ebp - 0x1524], 0
call fcn.10037b40
add esp, 8
test al, al
je 0x1000fece
call fcn.10008c80
call fcn.1000eb50
lea eax, [ebp - 0x1528]
mov dword [ebp - 0x1528], 0
push eax
push str.Reset_Config
mov dword [ebp - 0x1524], 0
call fcn.10037b40
add esp, 8
test al, al
je 0x1000ff35
call fcn.10009be0
mov dword [0x100ae4e8], 0x44610000
mov dword [0x100ae4ec], 0x44160000
mov dword [0x100ae4f0], 0x2d
mov byte [0x100ae4f4], 1
mov byte [0x100b1085], 0
call fcn.10009bf0
call fcn.1000ffe0
lea eax, [ebp - 0x1538]
mov dword [ebp - 0x1538], 0
push eax
push str.Donate
mov dword [ebp - 0x1534], 0
call fcn.10037b40
add esp, 8
test al, al
je 0x1000ff79
push 0
push 0
push 0
push str.https:__donatello.to_Frouk3
push str.open
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteA]
call fcn.10039fc0
call fcn.10039e70
call fcn.10016ed0
mov eax, dword [ebp - 0x14]
mov dword [ebp - 4], 0
test eax, eax
je 0x1000ff9f
push eax
call fcn.1001b9f0
add esp, 4
mov dword [ebp - 4], 0xffffffff
call fcn.10017410
call fcn.10020380
call fcn.10019350
push eax
call fcn.100357b0
add esp, 4
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.100459fc
mov esp, ebp
pop ebp
ret