Function at 0x100250d0
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100a560b
mov eax, dword fs:[0]
push eax
sub esp, 0x684
mov eax, dword [0x100ed294]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x380], ecx
mov ecx, dword [ebp + 8]
call fcn.10025e20
movzx eax, al
test eax, eax
jne 0x10025125
mov ecx, dword [ebp + 0xc]
call fcn.10025e20
movzx ecx, al
test ecx, ecx
jne 0x10025125
cmp dword [ebp + 0x10], 0
jne 0x1002512c
xor al, al
jmp 0x1002586e
push 0x208
push 0
lea edx, [ebp - 0x218]
push edx
call fcn.1006cfe0
add esp, 0xc
mov ecx, dword [ebp + 8]
call fcn.1000ad70
push eax
push 0x208
lea eax, [ebp - 0x218]
push eax
call fcn.10020030
lea ecx, [ebp - 0x218]
push ecx
call dword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecW]
mov ecx, dword [ebp + 8]
call fcn.1000ad70
mov dword [ebp - 0x310], eax
mov edx, dword [ebp - 0x310]
add edx, 2
mov dword [ebp - 0x388], edx
mov eax, dword [ebp - 0x310]
mov cx, word [eax]
mov word [ebp - 0x316], cx
add dword [ebp - 0x310], 2
cmp word [ebp - 0x316], 0
jne 0x10025186
mov edx, dword [ebp - 0x310]
sub edx, dword [ebp - 0x388]
sar edx, 1
mov dword [ebp - 0x384], edx
cmp dword [ebp - 0x384], 1
jb 0x100251d7
mov ecx, dword [ebp + 8]
call fcn.1000ad70
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x100251de
xor al, al
jmp 0x1002586e
mov dword [ebp - 0x314], 0
lea eax, [ebp - 0x314]
push eax
mov ecx, dword [ebp + 0x10]
push ecx
mov edx, dword [ebp + 0xc]
push edx
mov ecx, dword [ebp - 0x380]
call fcn.10025e90
test eax, eax
jne 0x1002520d
xor al, al
jmp 0x1002586e
lea eax, [ebp - 0x218]
push eax
lea ecx, [ebp - 0x348]
call fcn.100087d0
mov dword [ebp - 4], 0
mov ecx, dword [ebp + 0x10]
add ecx, 0x34
push ecx
mov edx, dword [ebp + 0x10]
add edx, 0x28
push edx
lea eax, [ebp - 0x348]
push eax
mov ecx, dword [ebp - 0x314]
push ecx
lea ecx, [ebp - 0x309]
call fcn.1003e5b0
movzx edx, al
test edx, edx
jne 0x10025260
mov dword [ebp - 0x344], 1
jmp 0x1002526a
mov dword [ebp - 0x344], 0
mov al, byte [ebp - 0x344]
mov byte [ebp - 0x30a], al
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x348]
call fcn.10009e40
movzx ecx, byte [ebp - 0x30a]
test ecx, ecx
je 0x1002539b
call fcn.10056330
mov dword [ebp - 0x34c], eax
push 1
mov edx, dword [ebp - 0x34c]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x34c]
mov edx, dword [eax + 8]
call edx
mov byte [ebp - 0x37c], al
cmp byte [ebp - 0x37c], 1
je 0x100252cb
jmp 0x10025394
push 0x100b22e8
lea ecx, [ebp - 0x290]
call fcn.10008d80
mov dword [ebp - 4], 1
push 0x100b2358
lea ecx, [ebp - 0x2a8]
call fcn.10008d80
mov byte [ebp - 4], 2
call fcn.10056330
mov dword [ebp - 0x350], eax
mov eax, dword [ebp + 0xc]
push eax
push 0x100b2360
push 0xe9
lea ecx, [ebp - 0x290]
push ecx
lea edx, [ebp - 0x2a8]
push edx
lea ecx, [ebp - 0x430]
call fcn.10009410
mov dword [ebp - 0x378], eax
mov eax, dword [ebp - 0x378]
mov dword [ebp - 0x374], eax
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x374]
call fcn.10015590
mov ecx, eax
call fcn.100155e0
push eax
mov ecx, dword [ebp - 0x350]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x350]
mov eax, dword [edx + 0x1c]
call eax
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x430]
call fcn.1000a370
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x2a8]
call fcn.1000a090
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x290]
call fcn.1000a090
xor al, al
jmp 0x1002586e
lea ecx, [ebp - 0x218]
push ecx
lea ecx, [ebp - 0x320]
call fcn.100087d0
mov dword [ebp - 4], 4
mov edx, dword [ebp + 0x10]
add edx, 0x10
push edx
lea eax, [ebp - 0x320]
push eax
mov ecx, dword [ebp - 0x314]
push ecx
lea ecx, [ebp - 0x309]
call fcn.1003ea80
movzx edx, al
test edx, edx
jne 0x100253e7
mov dword [ebp - 0x31c], 1
jmp 0x100253f1
mov dword [ebp - 0x31c], 0
mov al, byte [ebp - 0x31c]
mov byte [ebp - 0x30b], al
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x320]
call fcn.10009e40
movzx ecx, byte [ebp - 0x30b]
test ecx, ecx
je 0x10025522
call fcn.10056330
mov dword [ebp - 0x324], eax
push 1
mov edx, dword [ebp - 0x324]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x324]
mov edx, dword [eax + 8]
call edx
mov byte [ebp - 0x370], al
cmp byte [ebp - 0x370], 1
je 0x10025452
jmp 0x1002551b
push 0x100b23c8
lea ecx, [ebp - 0x230]
call fcn.10008d80
mov dword [ebp - 4], 5
push 0x100b235c
lea ecx, [ebp - 0x278]
call fcn.10008d80
mov byte [ebp - 4], 6
call fcn.10056330
mov dword [ebp - 0x328], eax
mov eax, dword [ebp + 0xc]
push eax
push str.General_App_Mode_Identify_Failed_Second_Name___App_Name:
push 0xf0
lea ecx, [ebp - 0x230]
push ecx
lea edx, [ebp - 0x278]
push edx
lea ecx, [ebp - 0x4c8]
call fcn.10009410
mov dword [ebp - 0x394], eax
mov eax, dword [ebp - 0x394]
mov dword [ebp - 0x38c], eax
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x38c]
call fcn.10015590
mov ecx, eax
call fcn.100155e0
push eax
mov ecx, dword [ebp - 0x328]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x328]
mov eax, dword [edx + 0x1c]
call eax
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x4c8]
call fcn.1000a370
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x278]
call fcn.1000a090
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x230]
call fcn.1000a090
xor al, al
jmp 0x1002586e
mov ecx, dword [ebp + 0x10]
add ecx, 0x1c
push ecx
mov edx, dword [ebp + 8]
push edx
mov eax, dword [ebp - 0x314]
push eax
lea ecx, [ebp - 0x309]
call fcn.1003e3e0
movzx ecx, al
test ecx, ecx
jne 0x1002564e
call fcn.10056330
mov dword [ebp - 0x32c], eax
push 1
mov edx, dword [ebp - 0x32c]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x32c]
mov edx, dword [eax + 8]
call edx
mov byte [ebp - 0x390], al
cmp byte [ebp - 0x390], 1
je 0x1002557e
jmp 0x10025647
push 0x100b24b0
lea ecx, [ebp - 0x248]
call fcn.10008d80
mov dword [ebp - 4], 8
push 0x100b23c4
lea ecx, [ebp - 0x260]
call fcn.10008d80
mov byte [ebp - 4], 9
call fcn.10056330
mov dword [ebp - 0x330], eax
mov eax, dword [ebp + 0xc]
push eax
push str.General_App_Mode_Identify_Failed_Company_Name___App_Name:
push 0xf8
lea ecx, [ebp - 0x248]
push ecx
lea edx, [ebp - 0x260]
push edx
lea ecx, [ebp - 0x560]
call fcn.10009410
mov dword [ebp - 0x398], eax
mov eax, dword [ebp - 0x398]
mov dword [ebp - 0x354], eax
mov byte [ebp - 4], 0xa
mov ecx, dword [ebp - 0x354]
call fcn.10015590
mov ecx, eax
call fcn.100155e0
push eax
mov ecx, dword [ebp - 0x330]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x330]
mov eax, dword [edx + 0x1c]
call eax
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x560]
call fcn.1000a370
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x260]
call fcn.1000a090
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x248]
call fcn.1000a090
xor al, al
jmp 0x1002586e
mov ecx, dword [ebp + 0x10]
add ecx, 0x48
push ecx
lea ecx, [ebp - 0x309]
call fcn.1003e930
movzx edx, al
test edx, edx
jne 0x1002576f
call fcn.10056330
mov dword [ebp - 0x334], eax
push 1
mov eax, dword [ebp - 0x334]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x334]
mov eax, dword [edx + 8]
call eax
mov byte [ebp - 0x358], al
cmp byte [ebp - 0x358], 1
je 0x1002569f
jmp 0x10025768
push 0x100b2598
lea ecx, [ebp - 0x2d8]
call fcn.10008d80
mov dword [ebp - 4], 0xb
push 0x100b24ac
lea ecx, [ebp - 0x2c0]
call fcn.10008d80
mov byte [ebp - 4], 0xc
call fcn.10056330
mov dword [ebp - 0x338], eax
mov ecx, dword [ebp + 0xc]
push ecx
push str.General_App_Mode_Identify_Failed_Window_Information___App_Name:
push 0xff
lea edx, [ebp - 0x2d8]
push edx
lea eax, [ebp - 0x2c0]
push eax
lea ecx, [ebp - 0x5f8]
call fcn.10009410
mov dword [ebp - 0x35c], eax
mov ecx, dword [ebp - 0x35c]
mov dword [ebp - 0x360], ecx
mov byte [ebp - 4], 0xd
mov ecx, dword [ebp - 0x360]
call fcn.10015590
mov ecx, eax
call fcn.100155e0
push eax
mov edx, dword [ebp - 0x338]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x338]
mov edx, dword [eax + 0x1c]
call edx
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x5f8]
call fcn.1000a370
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x2c0]
call fcn.1000a090
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2d8]
call fcn.1000a090
xor al, al
jmp 0x1002586e
call fcn.10056330
mov dword [ebp - 0x33c], eax
push 1
mov eax, dword [ebp - 0x33c]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x33c]
mov eax, dword [edx + 8]
call eax
mov byte [ebp - 0x364], al
cmp byte [ebp - 0x364], 1
je 0x100257a3
jmp 0x1002586c
push str.d:jenkins.jenkinsworkspacehalo_gamemodegamemodeldsmodeidentifyldsmodeidentifygeneral_mode_identify.cc
lea ecx, [ebp - 0x308]
call fcn.10008d80
mov dword [ebp - 4], 0xe
push 0x100b2594
lea ecx, [ebp - 0x2f0]
call fcn.10008d80
mov byte [ebp - 4], 0xf
call fcn.10056330
mov dword [ebp - 0x340], eax
mov ecx, dword [ebp + 0xc]
push ecx
push str.General_App_Mode_Identify_Success__App_Name:
push 0x104
lea edx, [ebp - 0x308]
push edx
lea eax, [ebp - 0x2f0]
push eax
lea ecx, [ebp - 0x690]
call fcn.10009410
mov dword [ebp - 0x368], eax
mov ecx, dword [ebp - 0x368]
mov dword [ebp - 0x36c], ecx
mov byte [ebp - 4], 0x10
mov ecx, dword [ebp - 0x36c]
call fcn.10015590
mov ecx, eax
call fcn.100155e0
push eax
mov edx, dword [ebp - 0x340]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x340]
mov edx, dword [eax + 0x1c]
call edx
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x690]
call fcn.1000a370
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x2f0]
call fcn.1000a090
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x308]
call fcn.1000a090
mov al, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.100633f2
mov esp, ebp
pop ebp
ret 0xc