Function at 0x1000e1f0
Capabilities:
Delete file
Get common file path
Query or enumerate registry value
Write file on windows

Disassembly:
push 0xffffffffffffffff
push 0x1007a2cb
mov eax, dword fs:[0]
push eax
sub esp, 0x524
mov eax, dword [0x1008e418]
xor eax, esp
mov dword [esp + 0x520], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x1008e418]
xor eax, esp
push eax
lea eax, [esp + 0x538]
mov dword fs:[0], eax
mov eax, dword [esp + 0x34]
and eax, 0xfffffe06
xor ebx, ebx
or eax, 6
push 0x20
mov byte [esp + 0x1b], 0
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x40], ebx
mov dword [esp + 0x44], ebx
call fcn.10056628
add esp, 4
mov dword [esp + 0x24], eax
mov dword [esp + 0x540], ebx
cmp eax, ebx
je 0x1000e26f
push eax
call fcn.1004effd
jmp 0x1000e271
xor eax, eax
mov dword [esp + 0x2c], eax
mov dword [esp + 0x540], 1
and dword [esp + 0x74], 0xfffffe00
mov dword [esp + 0x78], ebx
mov dword [esp + 0x7c], ebx
mov dword [esp + 0x80], ebx
lea ecx, [esp + 0x2c]
push ecx
mov byte [esp + 0x544], 3
call fcn.1003b200
lea edx, [esp + 0x6c]
push edx
call fcn.1003bc90
lea eax, [esp + 0x94]
push eax
call fcn.1000f5c0
mov dword [esp + 0x120], 0xf
mov dword [esp + 0x11c], ebx
mov byte [esp + 0x10c], 0
mov byte [esp + 0x540], 5
xor ebp, ebp
movsx eax, byte [esp + 0x34]
mov dword [esp + 0x18], ebp
cmp eax, 7
ja case.0x1000e2f6.0
jmp dword [eax*4 + 0x1000efc8]
mov eax, dword [esp + 0x2c]
cmp dword [eax + 0x1c], ebx
je case.0x1000e2f6.0
mov ecx, dword [eax + 0x18]
mov eax, dword [eax]
lea esi, [esp + 0x24]
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], ecx
call fcn.1004f65c
mov eax, dword [esp + 0x24]
cmp eax, ebx
jne 0x1000e343
call fcn.10055ff2
xor eax, eax
mov esi, dword [esp + 0x28]
cmp esi, dword [eax + 0x18]
jne 0x1000e33d
call fcn.10055ff2
mov eax, dword [esi + 0x14]
inc eax
jmp 0x1000e34e
mov eax, dword [eax]
jmp 0x1000e32f
mov ecx, dword [esp + 0x2c]
mov eax, dword [ecx + 0x1c]
cmp ebp, eax
jae case.0x1000e2f6.0
push ebp
lea edx, [esp + 0x30]
push edx
call fcn.1004d102
push str.pi_unique
push eax
mov ecx, 0x1007e6c1
call fcn.1004d3b9
push eax
lea ecx, [esp + 0x4c]
call fcn.1004c8e1
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [esp + 0x114]
mov byte [esp + 0x54c], 6
call fcn.10008960
mov byte [esp + 0x540], 5
cmp dword [esp + 0x60], 0x10
jb 0x1000e3af
mov eax, dword [esp + 0x4c]
push eax
call fcn.10056169
add esp, 4
cmp dword [esp + 0x11c], ebx
je 0x1000e553
mov ebx, dword [esp + 0xac]
mov edi, dword [esp + 0x94]
lea ecx, [esp + 0x108]
push ecx
lea edx, [esp + 0x8c]
push edx
lea esi, [esp + 0x9c]
call fcn.1000f540
mov esi, eax
test edi, edi
je 0x1000e3f0
cmp edi, dword [esi]
je 0x1000e3f5
call fcn.10055ff2
cmp ebx, dword [esi + 4]
jne 0x1000e553
lea eax, [esp + 0x108]
push eax
lea ecx, [esp + 0x98]
push ecx
lea ebx, [esp + 0xbc]
call fcn.1000f3e0
mov byte [esp + 0xd4], 1
mov esi, dword [esp + 0xd4]
xor ebp, ebp
and esi, 0xfffffeff
mov edi, 1
mov dword [esp + 0xd4], esi
mov dword [esp + 0xd8], ebp
mov dword [esp + 0xdc], ebp
mov dword [esp + 0xe0], ebp
mov dword [esp + 0xcc], edi
mov dword [esp + 0xd0], ebp
mov edx, dword [esp + 0x18]
push edx
lea eax, [esp + 0x30]
push eax
mov byte [esp + 0x548], 7
call fcn.1004d102
push str.pi_state
push eax
mov ecx, 0x1007e6cc
call fcn.1004d3b9
mov byte [esp + 0x540], 5
movsx ecx, byte [eax + 8]
mov dl, byte [esp + 0xd4]
xor ecx, esi
and ecx, 0xff
xor esi, ecx
lea ecx, [esp + 0xcc]
mov byte [eax + 8], dl
cmp eax, ecx
je 0x1000e4ca
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov dword [eax], edi
mov dword [eax + 4], ebp
mov dword [esp + 0xcc], ecx
mov dword [esp + 0xd0], edx
mov edx, dword [eax + 8]
mov ecx, edx
shr ecx, 8
and ecx, 1
shl ecx, 8
mov edi, edx
xor edi, esi
xor ecx, esi
and ecx, 0x100
and edi, 0x100
xor edi, edx
xor esi, ecx
lea ecx, [eax + 0xc]
lea edx, [esp + 0xd8]
mov dword [eax + 8], edi
mov dword [esp + 0xd4], esi
cmp ecx, edx
je 0x1000e511
mov edx, dword [ecx]
mov dword [ecx], ebp
mov dword [esp + 0xd8], edx
lea ecx, [eax + 0x10]
lea edx, [esp + 0xdc]
cmp ecx, edx
je 0x1000e52a
mov edx, dword [ecx]
mov dword [ecx], ebp
mov dword [esp + 0xdc], edx
add eax, 0x14
lea ecx, [esp + 0xe0]
cmp eax, ecx
je 0x1000e543
mov ecx, dword [eax]
mov dword [eax], ebp
mov dword [esp + 0xe0], ecx
lea esi, [esp + 0xcc]
call fcn.1004c6f3
mov ebp, dword [esp + 0x18]
inc ebp
xor ebx, ebx
jmp 0x1000e2e4
xor edi, edi
mov dword [esp + 0x18], edi
movsx eax, byte [esp + 0x74]
cmp eax, 7
ja case.0x1000e56f.0
jmp dword [eax*4 + 0x1000efe8]
mov eax, dword [esp + 0x6c]
cmp dword [eax + 0x1c], ebx
je case.0x1000e56f.0
mov ecx, dword [eax + 0x18]
mov eax, dword [eax]
lea esi, [esp + 0x64]
mov dword [esp + 0x64], eax
mov dword [esp + 0x68], ecx
call fcn.1004f65c
mov eax, dword [esp + 0x64]
cmp eax, ebx
jne 0x1000e5bc
call fcn.10055ff2
xor eax, eax
mov esi, dword [esp + 0x68]
cmp esi, dword [eax + 0x18]
jne 0x1000e5b6
call fcn.10055ff2
mov eax, dword [esi + 0x14]
inc eax
jmp 0x1000e5c7
mov eax, dword [eax]
jmp 0x1000e5a8
mov edx, dword [esp + 0x6c]
mov eax, dword [edx + 0x1c]
cmp edi, eax
jae case.0x1000e56f.0
push edi
lea eax, [esp + 0x70]
push eax
call fcn.1004d102
push str.pi_unique
push eax
mov ecx, 0x1007e6c1
call fcn.1004d3b9
push eax
lea ecx, [esp + 0x4c]
call fcn.1004c8e1
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [esp + 0x114]
mov byte [esp + 0x54c], 8
call fcn.10008960
mov byte [esp + 0x540], 5
cmp dword [esp + 0x60], 0x10
jb 0x1000e628
mov ecx, dword [esp + 0x4c]
push ecx
call fcn.10056169
add esp, 4
cmp dword [esp + 0x11c], ebx
je 0x1000eb6b
lea ecx, [esp + 0x108]
lea eax, [esp + 0x94]
call fcn.1000f9c0
mov ebp, dword [esp + 0x94]
mov ebx, dword [esp + 0xac]
mov esi, eax
mov dword [esp + 0xb8], esi
mov dword [esp + 0xb4], ebp
test ebp, ebp
jne 0x1000e676
call fcn.10055ff2
mov ebp, dword [esp + 0x94]
cmp esi, ebx
je 0x1000e6d3
cmp dword [esi + 0x24], 0x10
mov ebx, dword [esi + 0x20]
jb 0x1000e688
mov esi, dword [esi + 0x10]
jmp 0x1000e68b
add esi, 0x10
mov edi, dword [esp + 0x11c]
mov eax, edi
cmp edi, ebx
jb 0x1000e69a
mov eax, ebx
cmp dword [esp + 0x120], 0x10
mov edx, dword [esp + 0x10c]
jae 0x1000e6b2
lea edx, [esp + 0x10c]
mov ecx, esi
call fcn.10001050
test eax, eax
jne 0x1000e6c8
cmp edi, ebx
jb 0x1000e6d3
cmp edi, ebx
setne al
test eax, eax
jl 0x1000e6d3
lea eax, [esp + 0xb4]
jmp 0x1000e6ef
mov edx, dword [esp + 0xac]
mov dword [esp + 0x8c], edx
mov dword [esp + 0x88], ebp
lea eax, [esp + 0x88]
mov ecx, dword [eax]
mov esi, dword [eax + 4]
mov edi, dword [esp + 0xac]
test ebp, ebp
je 0x1000e703
cmp ebp, ecx
je 0x1000e708
call fcn.10055ff2
cmp edi, esi
jne 0x1000eb6b
mov eax, dword [esp + 0x18]
push eax
lea ecx, [esp + 0x70]
push ecx
call fcn.1004d102
push str.pi_kbid
push eax
mov ecx, 0x1007e41f
call fcn.1004d3b9
push eax
lea ecx, [esp + 0x4c]
call fcn.1004c8e1
push eax
lea ecx, [esp + 0xf0]
mov byte [esp + 0x544], 9
call fcn.10001c10
add esp, 4
mov bl, 0xb
mov byte [esp + 0x540], bl
cmp dword [esp + 0x60], 0x10
jb 0x1000e76e
mov edx, dword [esp + 0x4c]
push edx
call fcn.10056169
add esp, 4
xor ecx, ecx
mov esi, 8
mov dword [esp + 0x60], 0xf
mov dword [esp + 0x5c], ecx
mov byte [esp + 0x4c], cl
cmp dword [esp + 0x104], esi
jb 0x1000e84d
mov eax, dword [esp + 0xf0]
cmp eax, ecx
je 0x1000e859
lea edx, [esp + 0x90]
push edx
push ecx
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x98], ecx
lea ecx, [esp + 0x2c]
push ecx
push eax
push str.SoftwareprojonepodlppatchInstCache_
push reloc.OLEAUT32.dll_SysReAllocString
call dword [sym.imp.SHLWAPI.dll_SHGetValueW]
test eax, eax
sete al
test al, al
je 0x1000e859
mov eax, dword [esp + 0xf0]
cmp dword [esp + 0x104], esi
jae 0x1000e7ef
lea eax, [esp + 0xf0]
push eax
push str.uninstall_patch_already_in_reg_cache__kbid:_ls
call fcn.1004774a
mov byte [esp + 0xdc], 1
mov esi, dword [esp + 0xdc]
and esi, 0xfffffeff
add esp, 8
xor ebp, ebp
mov edi, 1
mov dword [esp + 0xd4], esi
mov dword [esp + 0xd8], ebp
mov dword [esp + 0xdc], ebp
mov dword [esp + 0xe0], ebp
mov dword [esp + 0xcc], edi
mov dword [esp + 0xd0], ebp
mov byte [esp + 0x540], 0xc
jmp 0x1000e8a4
lea eax, [esp + 0xf0]
jmp 0x1000e7a1
mov byte [esp + 0xd4], 1
mov esi, dword [esp + 0xd4]
xor edi, edi
and esi, 0xfffffeff
xor ebp, ebp
mov dword [esp + 0xd4], esi
mov dword [esp + 0xd8], edi
mov dword [esp + 0xdc], edi
mov dword [esp + 0xe0], edi
mov dword [esp + 0xcc], edi
mov dword [esp + 0xd0], ebp
mov byte [esp + 0x540], 0xd
mov edx, dword [esp + 0x18]
push edx
lea eax, [esp + 0x70]
push eax
call fcn.1004d102
push str.pi_state
push eax
mov ecx, 0x1007e6cc
call fcn.1004d3b9
mov byte [esp + 0x540], bl
movsx ecx, byte [eax + 8]
mov dl, byte [esp + 0xd4]
xor ecx, esi
and ecx, 0xff
xor esi, ecx
lea ecx, [esp + 0xcc]
mov byte [eax + 8], dl
cmp eax, ecx
je 0x1000e905
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov dword [eax], edi
mov dword [esp + 0xd0], edx
mov dword [esp + 0xcc], ecx
mov dword [eax + 4], ebp
mov edx, dword [eax + 8]
mov ecx, edx
shr ecx, 8
and ecx, 1
shl ecx, 8
mov edi, edx
xor edi, esi
xor ecx, esi
and ecx, 0x100
and edi, 0x100
xor edi, edx
xor esi, ecx
lea edx, [esp + 0xd8]
lea ecx, [eax + 0xc]
mov dword [esp + 0xd4], esi
mov dword [eax + 8], edi
cmp ecx, edx
je 0x1000e950
mov edx, dword [ecx]
mov dword [ecx], 0
mov dword [esp + 0xd8], edx
lea edx, [esp + 0xdc]
lea ecx, [eax + 0x10]
cmp ecx, edx
je 0x1000e96d
mov edx, dword [ecx]
mov dword [ecx], 0
mov dword [esp + 0xdc], edx
lea ecx, [esp + 0xe0]
add eax, 0x14
cmp eax, ecx
je 0x1000e98a
mov ecx, dword [eax]
mov dword [eax], 0
mov dword [esp + 0xe0], ecx
lea esi, [esp + 0xcc]
call fcn.1004c6f3
lea edx, [esp + 0x108]
push edx
lea eax, [esp + 0x98]
push eax
lea ebx, [esp + 0xc8]
call fcn.1000f3e0
mov ecx, dword [esp + 0x18]
push ecx
lea edx, [esp + 0x70]
push edx
call fcn.1004d102
push eax
lea ebx, [esp + 0xd0]
call fcn.1004c55f
mov byte [esp + 0x540], 0xe
movsx eax, byte [esp + 0x34]
cmp eax, 7
ja case.0x1000e9e0.0
jmp dword [eax*4 + 0x1000f008]
mov eax, dword [esp + 0x2c]
cmp dword [eax + 0x1c], 0
je case.0x1000e9e0.0
mov ecx, dword [eax + 0x18]
mov eax, dword [eax]
lea esi, [esp + 0x1c]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], ecx
call fcn.1004f65c
mov eax, dword [esp + 0x1c]
test eax, eax
jne 0x1000ea2a
call fcn.10055ff2
xor eax, eax
mov esi, dword [esp + 0x20]
cmp esi, dword [eax + 0x18]
jne 0x1000ea24
call fcn.10055ff2
mov eax, dword [esi + 0x14]
inc eax
jmp 0x1000ea39
mov eax, dword [eax]
jmp 0x1000ea16
mov eax, dword [esp + 0x2c]
mov eax, dword [eax + 0x1c]
jmp 0x1000ea39
xor eax, eax
push eax
lea ecx, [esp + 0x30]
push ecx
call fcn.1004d102
mov byte [esp + 0x540], 0xb
mov dl, byte [esp + 0xd4]
movsx ecx, byte [eax + 8]
mov byte [eax + 8], dl
mov edx, dword [esp + 0xd4]
xor ecx, edx
and ecx, 0xff
xor edx, ecx
lea ecx, [esp + 0xcc]
mov dword [esp + 0xd4], edx
cmp eax, ecx
je 0x1000eaa3
mov esi, dword [esp + 0xcc]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov dword [eax], esi
mov esi, dword [esp + 0xd0]
mov dword [eax + 4], esi
mov dword [esp + 0xcc], ecx
mov dword [esp + 0xd0], edx
mov edx, dword [eax + 8]
mov esi, edx
xor esi, dword [esp + 0xd4]
mov ecx, edx
shr ecx, 8
and ecx, 1
and esi, 0x100
xor esi, edx
shl ecx, 8
mov dword [eax + 8], esi
mov edx, dword [esp + 0xd4]
xor ecx, edx
and ecx, 0x100
xor edx, ecx
mov dword [esp + 0xd4], edx
lea ecx, [eax + 0xc]
lea edx, [esp + 0xd8]
cmp ecx, edx
je 0x1000eafd
mov esi, dword [esp + 0xd8]
mov edx, dword [ecx]
mov dword [ecx], esi
mov dword [esp + 0xd8], edx
lea ecx, [eax + 0x10]
lea edx, [esp + 0xdc]
cmp ecx, edx
je 0x1000eb1d
mov esi, dword [esp + 0xdc]
mov edx, dword [ecx]
mov dword [ecx], esi
mov dword [esp + 0xdc], edx
add eax, 0x14
lea ecx, [esp + 0xe0]
cmp eax, ecx
je 0x1000eb3d
mov edx, dword [esp + 0xe0]
mov ecx, dword [eax]
mov dword [eax], edx
mov dword [esp + 0xe0], ecx
lea esi, [esp + 0xcc]
call fcn.1004c6f3
mov byte [esp + 0x540], 5
cmp dword [esp + 0x104], 8
jb 0x1000eb6b
mov eax, dword [esp + 0xf0]
push eax
call fcn.10056169
add esp, 4
inc dword [esp + 0x18]
mov edi, dword [esp + 0x18]
xor ebx, ebx
jmp 0x1000e561
call fcn.10034a90
test eax, eax
jne 0x1000ec11
mov al, byte [esp + 0x34]
test al, al
je 0x1000eb9b
cmp al, 6
je 0x1000eb9b
cmp al, 7
je 0x1000eb9b
xor al, al
jmp 0x1000ec00
movsx eax, al
cmp eax, 7
ja case.0x1000eba3.0
jmp dword [eax*4 + 0x1000f028]
mov eax, dword [esp + 0x2c]
cmp dword [eax + 0x1c], ebx
je case.0x1000eba3.0
mov ecx, dword [eax + 0x18]
mov eax, dword [eax]
lea esi, [esp + 0x1c]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], ecx
call fcn.1004f65c
mov eax, dword [esp + 0x1c]
cmp eax, ebx
jne 0x1000ebec
call fcn.10055ff2
xor eax, eax
mov esi, dword [esp + 0x20]
cmp esi, dword [eax + 0x18]
jne 0x1000ebe6
call fcn.10055ff2
mov eax, dword [esi + 0x14]
inc eax
jmp 0x1000ebfb
mov eax, dword [eax]
jmp 0x1000ebd8
mov ecx, dword [esp + 0x2c]
mov eax, dword [ecx + 0x1c]
jmp 0x1000ebfb
xor eax, eax
cmp eax, ebx
sete al
xor edx, edx
test al, al
sete dl
mov eax, edx
cmp eax, ebx
je 0x1000ef1d
lea eax, [esp + 0x2c]
push eax
lea ecx, [esp + 0xd0]
call fcn.1004da89
lea ecx, [esp + 0xcc]
push ecx
lea ecx, [esp + 0x4c]
mov byte [esp + 0x544], 0xf
call fcn.10001c10
add esp, 4
mov ebx, 0x10
mov esi, 8
mov byte [esp + 0x540], bl
cmp dword [eax + 0x18], esi
jb 0x1000ec59
mov eax, dword [eax + 4]
jmp 0x1000ec5c
add eax, 4
push eax
push str.reportor:_ls
call fcn.100475ec
add esp, 8
mov byte [esp + 0x540], 0xf
cmp dword [esp + 0x60], esi
jb 0x1000ec85
mov edx, dword [esp + 0x4c]
push edx
call fcn.10056169
add esp, 4
xor eax, eax
push 0x206
push eax
lea ecx, [esp + 0x12e]
push ecx
mov word [esp + 0x130], ax
call fcn.10061ab0
add esp, 0xc
xor edx, edx
push 0x206
push edx
lea eax, [esp + 0x336]
push eax
mov word [esp + 0x338], dx
call fcn.10061ab0
add esp, 0xc
lea ecx, [esp + 0x32c]
push ecx
push 0x104
call dword [sym.imp.KERNEL32.dll_GetTempPathW]
test eax, eax
je 0x1000ecf6
lea edx, [esp + 0x124]
push edx
push 0
push 0
lea eax, [esp + 0x338]
push eax
call dword [sym.imp.KERNEL32.dll_GetTempFileNameW]
mov edi, dword [sym.imp.KERNEL32.dll_CreateFileW]
push 0
push 0
push 2
push 0
push 0
push 0x40000000
lea ecx, [esp + 0x13c]
push ecx
call edi
mov ebp, dword [sym.imp.KERNEL32.dll_WriteFile]
mov esi, eax
test esi, esi
je 0x1000ed50
cmp esi, 0xffffffff
je 0x1000ed60
mov eax, dword [esp + 0xd0]
cmp dword [esp + 0xe4], ebx
jae 0x1000ed3d
lea eax, [esp + 0xd0]
mov ecx, dword [esp + 0xe0]
push 0
lea edx, [esp + 0x28]
push edx
push ecx
push eax
push esi
call ebp
cmp esi, 0xffffffff
je 0x1000ed60
test esi, esi
je 0x1000ed60
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
lea ebx, [esp + 0xec]
call fcn.10048c78
mov byte [esp + 0x540], 0x11
cmp dword [esp + 0x100], 0
jne 0x1000ed90
push str.get_patch_info_path_failed
call fcn.100478a8
add esp, 4
jmp 0x1000ee29
mov eax, dword [esp + 0xf0]
mov esi, 8
cmp dword [esp + 0x104], esi
jae 0x1000edac
lea eax, [esp + 0xf0]
push eax
push str.write_patch_info:__s
call fcn.100475ec
mov eax, dword [esp + 0xf8]
add esp, 8
cmp dword [esp + 0x104], esi
jae 0x1000edd1
lea eax, [esp + 0xf0]
push 0
push 0
push 2
push 0
push 0
push 0x40000000
push eax
call edi
mov esi, eax
test esi, esi
je 0x1000ee19
cmp esi, 0xffffffff
je 0x1000ee29
cmp dword [esp + 0xe4], 0x10
mov eax, dword [esp + 0xd0]
jae 0x1000ee06
lea eax, [esp + 0xd0]
mov ecx, dword [esp + 0xe0]
push 0
lea edx, [esp + 0x28]
push edx
push ecx
push eax
push esi
call ebp
cmp esi, 0xffffffff
je 0x1000ee29
test esi, esi
je 0x1000ee29
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
lea edx, [esp + 0x48]
push edx
call fcn.10048bed
add esp, 4
mov esi, 0x10
mov byte [esp + 0x540], 0x12
cmp dword [eax + 0x18], esi
jb 0x1000ee4d
mov eax, dword [eax + 4]
jmp 0x1000ee50
add eax, 4
lea ecx, [esp + 0x124]
push ecx
push eax
call fcn.1000dff0
add esp, 8
mov bl, al
mov byte [esp + 0x540], 0x11
mov byte [esp + 0x17], bl
cmp dword [esp + 0x60], esi
jb 0x1000ee82
mov edx, dword [esp + 0x4c]
push edx
call fcn.10056169
add esp, 4
lea eax, [esp + 0x124]
mov esi, 0xf
xor edi, edi
push eax
mov dword [esp + 0x64], esi
mov dword [esp + 0x60], edi
mov byte [esp + 0x50], 0
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
test bl, bl
jne 0x1000eeb5
push str.upload_patch_info_failed
call fcn.100478a8
add esp, 4
cmp dword [esp + 0x104], 8
jb 0x1000eecf
mov ecx, dword [esp + 0xf0]
push ecx
call fcn.10056169
add esp, 4
xor edx, edx
cmp dword [esp + 0xe4], 0x10
mov dword [esp + 0x104], 7
mov dword [esp + 0x100], edi
mov word [esp + 0xf0], dx
jb 0x1000ef05
mov eax, dword [esp + 0xd0]
push eax
call fcn.10056169
add esp, 4
mov dword [esp + 0xe4], esi
mov dword [esp + 0xe0], edi
mov byte [esp + 0xd0], 0
xor ebx, ebx
cmp dword [esp + 0x120], 0x10
jb 0x1000ef37
mov ecx, dword [esp + 0x10c]
push ecx
call fcn.10056169
add esp, 4
mov dword [esp + 0x120], 0xf
mov dword [esp + 0x11c], ebx
mov byte [esp + 0x10c], 0
lea esi, [esp + 0x94]
mov byte [esp + 0x540], 0x13
call fcn.1000f880
mov edx, dword [esp + 0x94]
push edx
call fcn.10056169
add esp, 4
lea esi, [esp + 0x6c]
mov byte [esp + 0x540], 1
call fcn.1004c6f3
lea esi, [esp + 0x2c]
mov dword [esp + 0x540], 0xffffffff
call fcn.1004c6f3
mov al, byte [esp + 0x17]
mov ecx, dword [esp + 0x538]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x520]
xor ecx, esp
call fcn.10055232
add esp, 0x530
ret