Function at 0x4c3420
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x600c65
mov eax, dword fs:[0]
push eax
mov eax, 0x10a4
call fcn.0055d950
mov eax, dword [0x6c2d9c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov esi, dword [ebp + 8]
mov dword [ebp - 0x10ac], 0
mov dword [ebp - 0x10b0], esi
mov dword [ebp - 0x1080], 0
mov dword [ebp - 0x107c], 0xf
mov byte [ebp - 0x1090], 0
lea eax, [ebp - 0x1090]
mov dword [ebp - 4], 0
push eax
call fcn.004c2e50
add esp, 4
mov eax, dword [ebp - 0x1080]
lea ecx, [ebp - 0x10a8]
inc eax
mov byte [ebp - 4], 1
push eax
mov dword [ebp - 0x1098], 0
mov dword [ebp - 0x1094], 0xf
mov byte [ebp - 0x10a8], 0
mov dword [ebp - 0x10ac], 1
call fcn.00456a70
cmp dword [ebp - 0x107c], 0x10
lea eax, [ebp - 0x1090]
push dword [ebp - 0x1080]
cmovae eax, dword [ebp - 0x1090]
lea ecx, [ebp - 0x10a8]
push eax
call fcn.00450ff0
push 1
push 0x62dab8
lea ecx, [ebp - 0x10a8]
call fcn.00450ff0
push 0xb
push str.Adobe01.bmp
lea ecx, [ebp - 0x10a8]
call fcn.00450ff0
mov dword [ebp - 0x1068], 0
mov dword [ebp - 0x1064], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x1078], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x1068], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov edx, dword [ebp - 0x1094]
mov byte [ebp - 4], 3
cmp edx, 0x10
jb 0x4c3597
mov ecx, dword [ebp - 0x10a8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4c358d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4c3bc6
push edx
push ecx
call fcn.0055d3b2
add esp, 8
cmp dword [ebp - 0x1064], 0x10
lea eax, [ebp - 0x1078]
mov dword [ebp - 0x1098], 0
cmovae eax, dword [ebp - 0x1078]
push eax
mov dword [ebp - 0x1094], 0xf
mov byte [ebp - 0x10a8], 0
call fcn.00460be0
add esp, 4
test eax, eax
je 0x4c37fe
cmp dword [ebp - 0x1064], 0x10
lea eax, [ebp - 0x1078]
mov ecx, esi
cmovae eax, dword [ebp - 0x1078]
push eax
call fcn.004c2bb0
test eax, eax
jne 0x4c3640
mov ecx, edi
call fcn.004c32e0
test al, al
mov ecx, esi
sete al
movzx eax, al
push eax
call fcn.004c2d70
test eax, eax
je 0x4c3b1a
cmp eax, 0xfffffffb
jne 0x4c3623
mov dword [edi + 0xc], eax
jmp 0x4c36d5
cmp eax, 0xfffffff5
jne 0x4c3640
push str.mkey_error__hardware_malfunctioning_detected.
push 2
call fcn.004bea20
mov dword [edi + 0xc], 0xfffffff5
jmp 0x4c36d2
push 0x1e
push str.Unexpeted_mkey_error_deteced:
lea ecx, [ebp - 0x1060]
mov dword [ebp - 0x1050], 0
mov dword [ebp - 0x104c], 0xf
mov byte [ebp - 0x1060], 0
call fcn.0044e410
cmp dword [ebp - 0x104c], 0x10
lea eax, [ebp - 0x1060]
mov byte [ebp - 4], 4
cmovae eax, dword [ebp - 0x1060]
push eax
push 2
call fcn.004bea20
mov edx, dword [ebp - 0x104c]
add esp, 8
mov dword [edi + 0xc], 0xfffffff7
mov byte [ebp - 4], 3
cmp edx, 0x10
jb 0x4c36d5
mov ecx, dword [ebp - 0x1060]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4c36cb
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4c3bcb
push edx
push ecx
call fcn.0055d3b2
add esp, 8
cmp dword [ebp - 0x1064], 0x10
lea eax, [ebp - 0x1078]
cmovae eax, dword [ebp - 0x1078]
push eax
call fcn.00460fa0
add esp, 4
mov dword [ebp - 0x1050], 0
mov dword [ebp - 0x104c], 0xf
lea ecx, [ebp - 0x1060]
mov byte [ebp - 0x1060], 0
test eax, eax
je 0x4c378a
push 0x19
push str.error_deleting_bad_mkey:
call fcn.0044e410
cmp dword [ebp - 0x104c], 0x10
lea eax, [ebp - 0x1060]
mov byte [ebp - 4], 5
cmovae eax, dword [ebp - 0x1060]
push eax
push 2
call fcn.004bea20
mov edx, dword [ebp - 0x104c]
add esp, 8
cmp edx, 0x10
jb 0x4c3780
mov ecx, dword [ebp - 0x1060]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4c3776
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4c3bd0
push edx
push ecx
call fcn.0055d3b2
add esp, 8
mov esi, 0x13
jmp 0x4c3b1c
push 0x1d
push str.mkey_was_bad__regenerating_it
call fcn.0044e410
cmp dword [ebp - 0x104c], 0x10
lea eax, [ebp - 0x1060]
mov byte [ebp - 4], 6
cmovae eax, dword [ebp - 0x1060]
push eax
push 4
call fcn.004bea20
add esp, 8
mov ecx, esi
call fcn.004c2cb0
mov edx, dword [ebp - 0x104c]
mov byte [ebp - 4], 3
cmp edx, 0x10
jb 0x4c37fe
mov ecx, dword [ebp - 0x1060]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4c37f4
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4c3bd5
push edx
push ecx
call fcn.0055d3b2
add esp, 8
push 0x1038
lea eax, [ebp - 0x1048]
push 0x63b240
push eax
call fcn.00571b10
cmp dword [ebp - 0x107c], 0x10
lea eax, [ebp - 0x1090]
cmovae eax, dword [ebp - 0x1090]
push eax
call fcn.00460be0
add esp, 0x10
test eax, eax
jne 0x4c385b
cmp dword [ebp - 0x107c], 0x10
lea eax, [ebp - 0x1090]
mov ecx, edi
cmovae eax, dword [ebp - 0x1090]
push eax
call fcn.004c3db0
mov esi, eax
test esi, esi
jne 0x4c3b1c
cmp dword [ebp - 0x1064], 0x10
lea eax, [ebp - 0x1078]
push 0x63b0a8
cmovae eax, dword [ebp - 0x1078]
push eax
call fcn.00460c10
add esp, 8
mov dword [ebp - 0x10ac], eax
test eax, eax
jne 0x4c391a
push 0x18
push str.error_creating_mkey_file
lea ecx, [ebp - 0x1060]
mov dword [ebp - 0x1050], eax
mov dword [ebp - 0x104c], 0xf
mov byte [ebp - 0x1060], al
call fcn.0044e410
cmp dword [ebp - 0x104c], 0x10
lea eax, [ebp - 0x1060]
mov byte [ebp - 4], 7
cmovae eax, dword [ebp - 0x1060]
push eax
push 2
call fcn.004bea20
mov edx, dword [ebp - 0x104c]
add esp, 8
cmp edx, 0x10
jb 0x4c3910
mov ecx, dword [ebp - 0x1060]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4c3906
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4c3bda
push edx
push ecx
call fcn.0055d3b2
add esp, 8
mov esi, 0x11
jmp 0x4c3b1c
push eax
push 0x1038
lea eax, [ebp - 0x1048]
push 1
push eax
call fcn.0058d9f7
push dword [ebp - 0x10ac]
mov esi, eax
call fcn.0057bf1b
add esp, 0x14
cmp esi, 0x1038
je 0x4c39de
push 0x17
push str.error_writing_mkey_file
lea ecx, [ebp - 0x1060]
mov dword [ebp - 0x1050], 0
mov dword [ebp - 0x104c], 0xf
mov byte [ebp - 0x1060], 0
call fcn.0044e410
cmp dword [ebp - 0x104c], 0x10
lea eax, [ebp - 0x1060]
mov byte [ebp - 4], 8
cmovae eax, dword [ebp - 0x1060]
push eax
push 2
call fcn.004bea20
mov edx, dword [ebp - 0x104c]
add esp, 8
cmp edx, 0x10
jb 0x4c39d4
mov ecx, dword [ebp - 0x1060]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4c39ca
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4c3bdf
push edx
push ecx
call fcn.0055d3b2
add esp, 8
mov esi, 0x12
jmp 0x4c3b1c
mov ecx, dword [ebp - 0x10b0]
call fcn.004c28e0
test eax, eax
je 0x4c3a37
lea eax, [eax + str.error_generating_mkey:]
push eax
lea ecx, [ebp - 0x1060]
call fcn.00452d90
cmp dword [ebp - 0x104c], 0x10
lea eax, [ebp - 0x1060]
mov byte [ebp - 4], 9
cmovae eax, dword [ebp - 0x1060]
push eax
push 2
call fcn.004bea20
add esp, 8
lea ecx, [ebp - 0x1060]
call fcn.00438a90
mov esi, 0xd
jmp 0x4c3b1c
cmp dword [ebp - 0x1064], 0x10
lea esi, [ebp - 0x1078]
lea ecx, [ebp - 0x1078]
cmovae esi, dword [ebp - 0x1078]
cmovae ecx, dword [ebp - 0x1078]
push esi
mov esi, dword [ebp - 0x10b0]
push ecx
mov ecx, esi
call fcn.004c2cc0
test eax, eax
je 0x4c3ab2
lea eax, [eax + str.error_storing_mkey:]
push eax
lea ecx, [ebp - 0x1060]
call fcn.00452d90
cmp dword [ebp - 0x104c], 0x10
lea eax, [ebp - 0x1060]
mov byte [ebp - 4], 0xa
cmovae eax, dword [ebp - 0x1060]
push eax
push 2
call fcn.004bea20
add esp, 8
lea ecx, [ebp - 0x1060]
call fcn.00438a90
mov esi, 0xd
jmp 0x4c3b1c
mov ecx, edi
call fcn.004c32e0
test al, al
mov ecx, esi
sete al
movzx eax, al
push eax
call fcn.004c2d70
test eax, eax
je 0x4c3ae3
push str.Created_a_new_machine_key__but_verification_failed
push 2
call fcn.004bea20
add esp, 8
mov esi, 0xd
jmp 0x4c3b1c
cmp dword [ebp - 0x1064], 0x10
lea eax, [ebp - 0x1078]
cmovae eax, dword [ebp - 0x1078]
push eax
call fcn.004affe0
add esp, 4
test al, al
jne 0x4c3b1a
push str.Couldnt_update_the_perms_on_the_machine_key
push 2
call fcn.004bea20
add esp, 8
mov esi, 0x16
jmp 0x4c3b1c
xor esi, esi
mov edx, dword [ebp - 0x1064]
cmp edx, 0x10
jb 0x4c3b56
mov ecx, dword [ebp - 0x1078]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4c3b4c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4c3be4
push edx
push ecx
call fcn.0055d3b2
add esp, 8
mov edx, dword [ebp - 0x107c]
mov dword [ebp - 0x1068], 0
mov dword [ebp - 0x1064], 0xf
mov byte [ebp - 0x1078], 0
cmp edx, 0x10
jb 0x4c3ba7
mov ecx, dword [ebp - 0x1090]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4c3b9d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4c3be4
push edx
push ecx
call fcn.0055d3b2
add esp, 8
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0055d371
mov esp, ebp
pop ebp
ret 4
call fcn.0057bc5b
call fcn.0057bc5b
call fcn.0057bc5b
call fcn.0057bc5b
call fcn.0057bc5b
call fcn.0057bc5b
call fcn.0057bc5b
int3