Function at 0x454440
Capabilities:
Create process on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x589a28
mov eax, dword fs:[0]
push eax
sub esp, 0x14
push ebx
push esi
push edi
mov eax, dword [0x5f01b4]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
push 0x5bda14
lea ecx, [ebp - 0x10]
mov dword [ebp - 4], 0
call fcn.00401ca0
push 0x5bda14
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 1
call fcn.00401ca0
push 0x36
push str.https:__update.brother.co.jp_update_troubleshoot.aspx_
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 2
call fcn.00401f50
lea eax, [ebp + 0x140]
push eax
lea ecx, [ebp - 0x1c]
call fcn.00402070
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ecx - 0xc]
test eax, eax
jle 0x454533
push str.model
lea edx, [ebp - 0x10]
push edx
lea eax, [ebp - 0x14]
push eax
call fcn.00404ea0
lea ecx, [ebp - 0x1c]
push ecx
push eax
lea edx, [ebp - 0x18]
mov bl, 3
push edx
mov byte [ebp - 4], bl
call fcn.00404de0
add esp, 0x18
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 4
call fcn.00402070
mov byte [ebp - 4], bl
mov eax, dword [ebp - 0x18]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x454510
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 2
mov eax, dword [ebp - 0x14]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x454533
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea esi, [ebp - 0x14]
call fcn.00452f30
push eax
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 5
call fcn.00402070
mov byte [ebp - 4], 2
mov eax, dword [ebp - 0x14]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x45456b
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, dword [ebp - 0x1c]
cmp dword [ecx - 0xc], 0
jle 0x4545ee
push str.country
lea edx, [ebp - 0x10]
push edx
lea eax, [ebp - 0x18]
push eax
call fcn.00404ea0
lea ecx, [ebp - 0x1c]
push ecx
push eax
lea edx, [ebp - 0x14]
mov bl, 6
push edx
mov byte [ebp - 4], bl
call fcn.00404de0
add esp, 0x18
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 7
call fcn.00402070
mov byte [ebp - 4], bl
mov eax, dword [ebp - 0x14]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4545cb
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 2
mov eax, dword [ebp - 0x18]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4545ee
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [ebp - 0x14]
push ecx
call fcn.00454190
push eax
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 8
call fcn.00402070
mov byte [ebp - 4], 2
mov eax, dword [ebp - 0x14]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x454627
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, dword [ebp - 0x1c]
cmp dword [ecx - 0xc], 0
jle 0x4546aa
push str.os
lea edx, [ebp - 0x10]
push edx
lea eax, [ebp - 0x18]
push eax
call fcn.00404ea0
lea ecx, [ebp - 0x1c]
push ecx
push eax
lea edx, [ebp - 0x14]
mov bl, 9
push edx
mov byte [ebp - 4], bl
call fcn.00404de0
add esp, 0x18
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0xa
call fcn.00402070
mov byte [ebp - 4], bl
mov eax, dword [ebp - 0x14]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x454687
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 2
mov eax, dword [ebp - 0x18]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4546aa
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, dword [ebp + 0xc8]
push ecx
lea edx, [ebp - 0x1c]
push 0x5beffc
push edx
call fcn.004056c0
mov eax, dword [ebp - 0x1c]
add esp, 0xc
cmp dword [eax - 0xc], 0
jle 0x454745
push 0x5c4498
lea ecx, [ebp - 0x10]
push ecx
lea edx, [ebp - 0x18]
push edx
call fcn.00404ea0
lea ecx, [ebp - 0x1c]
push ecx
push eax
lea edx, [ebp - 0x14]
mov bl, 0xb
push edx
mov byte [ebp - 4], bl
call fcn.00404de0
add esp, 0x18
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0xc
call fcn.00402070
mov byte [ebp - 4], bl
mov eax, dword [ebp - 0x14]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x454722
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 2
mov eax, dword [ebp - 0x18]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x454745
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea eax, [ebp + 8]
lea esi, [ebp - 0x20]
call fcn.004560a0
mov esi, eax
push str.serial
lea ecx, [ebp - 0x10]
push ecx
lea edx, [ebp - 0x18]
push edx
mov byte [ebp - 4], 0xd
call fcn.00404ea0
push esi
push eax
lea eax, [ebp - 0x14]
mov bl, 0xe
push eax
mov byte [ebp - 4], bl
call fcn.00404de0
add esp, 0x18
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0xf
call fcn.00402070
mov byte [ebp - 4], bl
mov eax, dword [ebp - 0x14]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4547aa
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0xd
mov eax, dword [ebp - 0x18]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4547cd
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 2
mov eax, dword [ebp - 0x20]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4547f0
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
sub esp, 0x1fc
mov ecx, esp
mov dword [ebp - 0x20], esp
lea edx, [ebp + 8]
push edx
push ecx
call fcn.00402fc0
lea edi, [ebp - 0x18]
call fcn.00452b80
mov esi, eax
push str.prod2
lea eax, [ebp - 0x10]
push eax
lea ecx, [ebp - 0x14]
push ecx
mov byte [ebp - 4], 0x10
call fcn.00404ea0
push esi
push eax
lea edx, [ebp - 0x20]
mov bl, 0x11
push edx
mov byte [ebp - 4], bl
call fcn.00404de0
add esp, 0x18
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x12
call fcn.00402070
mov byte [ebp - 4], bl
mov eax, dword [ebp - 0x20]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x454867
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x10
mov eax, dword [ebp - 0x14]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x45488a
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 2
mov eax, dword [ebp - 0x18]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4548ad
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea esi, [ebp - 0x18]
call fcn.00452c70
mov esi, eax
push str.bid
lea ecx, [ebp - 0x10]
push ecx
lea edx, [ebp - 0x14]
push edx
mov byte [ebp - 4], 0x13
call fcn.00404ea0
push esi
push eax
lea eax, [ebp - 0x20]
mov bl, 0x14
push eax
mov byte [ebp - 4], bl
call fcn.00404de0
add esp, 0x18
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x15
call fcn.00402070
mov byte [ebp - 4], bl
mov eax, dword [ebp - 0x20]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x45490f
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x13
mov eax, dword [ebp - 0x14]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x454932
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 2
mov eax, dword [ebp - 0x18]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x454955
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push str.appstatusmonitor
lea ecx, [ebp - 0x10]
push ecx
lea edx, [ebp - 0x20]
push edx
call fcn.00404ea0
add esp, 0xc
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x16
call fcn.00402070
mov byte [ebp - 4], 2
mov eax, dword [ebp - 0x20]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x45499a
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, dword [ebp - 0x10]
push 1
push 0
push 0
push ecx
push 0x5c2afc
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteA]
push str.__________________WebLink____________________n
push 0x40000
push 0x5f2054
call fcn.00433010
mov edx, dword [ebp - 0x10]
push edx
push str.__URL___s_n
push 0x40000
push 0x5f2054
call fcn.00433010
push str._____________________________________________n_n
push 0x40000
push 0x5f2054
call fcn.00433010
mov byte [ebp - 4], 1
mov eax, dword [ebp - 0x1c]
add eax, 0xfffffff0
add esp, 0x28
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x454a17
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0
mov eax, dword [ebp - 0x10]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x454a3a
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [ebp + 8]
call fcn.004026e0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x1fc