Function at 0x401000
Capabilities:
Encode data using xor
Read .ini file
Read file on windows

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffff80
push edi
sub esp, 0x37c
xor edi, edi
mov dword [esp + 0x2b4], ebx
mov dword [esp + 0x22c], esi
push edi
call fcn.0044c850
push section..data
call fcn.00404a40
mov dword [esp + 0x2e4], eax
push edi
push 0x45902c
call fcn.00404a00
push 0x459058
call fcn.00404a40
add esp, 0x14
mov dword [esp + 0x2dc], eax
pxor xmm0, xmm0
movaps xmmword [0x45dd00], xmm0
movaps xmmword [0x45dd10], xmm0
movaps xmmword [0x45dd20], xmm0
movaps xmmword [0x45dd30], xmm0
pxor xmm0, xmm0
movaps xmmword [0x4df8c0], xmm0
movaps xmmword [0x4df8d0], xmm0
movaps xmmword [0x4df8e0], xmm0
movq qword [0x4df8f0], xmm0
mov eax, 0x80
pxor xmm0, xmm0
movaps xmmword [eax + 0x45dd30], xmm0
movaps xmmword [eax + 0x45dd20], xmm0
movaps xmmword [eax + 0x45dd10], xmm0
movaps xmmword [eax + 0x45dd00], xmm0
sub eax, 0x40
jne 0x401099
mov eax, 0x200
pxor xmm0, xmm0
movaps xmmword [eax + 0x45ddb0], xmm0
movaps xmmword [eax + 0x45dda0], xmm0
movaps xmmword [eax + 0x45dd90], xmm0
movaps xmmword [eax + 0x45dd80], xmm0
sub eax, 0x40
jne 0x4010c3
mov eax, 0x200
pxor xmm0, xmm0
movaps xmmword [eax + 0x45dfb0], xmm0
movaps xmmword [eax + 0x45dfa0], xmm0
movaps xmmword [eax + 0x45df90], xmm0
movaps xmmword [eax + 0x45df80], xmm0
sub eax, 0x40
jne 0x4010ed
mov eax, 0x200
pxor xmm0, xmm0
movaps xmmword [eax + 0x45e1b0], xmm0
movaps xmmword [eax + 0x45e1a0], xmm0
movaps xmmword [eax + 0x45e190], xmm0
movaps xmmword [eax + 0x45e180], xmm0
sub eax, 0x40
jne 0x401117
mov eax, 0x100
pxor xmm0, xmm0
movaps xmmword [eax + 0x45e3b0], xmm0
movaps xmmword [eax + 0x45e3a0], xmm0
movaps xmmword [eax + 0x45e390], xmm0
movaps xmmword [eax + 0x45e380], xmm0
sub eax, 0x40
jne 0x401141
pxor xmm0, xmm0
movaps xmmword [0x4df900], xmm0
movd dword [0x4df910], xmm0
mov byte [0x4df95c], 3
mov byte [0x4df908], 0
mov dword [0x4df904], 0x312e392e
mov dword [0x4df900], 0x352e3276
push 0x4df900
push str._nDmp2Mkey__s__Git_17DEC2011_n
call fcn.00438e90
add esp, 8
push 0xa
call dword [sym.imp.KERNEL32.dll_IsProcessorFeaturePresent]
test eax, eax
jne 0x4011ee
push str.CPU_does_not_support_required_SSE2_instruction_set._Please_see_dmp2mkey.txt_n
call fcn.00438e90
push 0x459084
call fcn.00404a20
add esp, 8
mov ebx, dword [esp + 0x2b4]
mov eax, 0x32
mov esi, dword [esp + 0x22c]
add esp, 0x37c
pop edi
mov esp, ebp
pop ebp
ret
mov word [esp + 0x360], di
mov eax, 0x80
pxor xmm0, xmm0
movaps xmmword [esp + eax + 0x2d0], xmm0
movaps xmmword [esp + eax + 0x2c0], xmm0
movaps xmmword [esp + eax + 0x2b0], xmm0
movaps xmmword [esp + eax + 0x2a0], xmm0
sub eax, 0x40
jne 0x4011fb
mov word [esp + 0x2e0], di
push 0x402
call fcn.00438f9c
add esp, 4
mov ebx, eax
push dword [0x4df918]
push 0x200
push ebx
push 0x44e0ac
push str.cell57
push str.emulator
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
inc eax
cmp eax, 0x200
jb 0x4012a6
mov esi, 0x200
push ebx
add esi, 0x200
call fcn.0043901c
lea eax, [esi + esi + 2]
push eax
call fcn.00438f9c
add esp, 8
mov ebx, eax
push dword [0x4df918]
push esi
push ebx
push 0x44e0ac
push str.cell57
push str.emulator
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
inc eax
cmp esi, eax
jbe 0x401269
push ebx
call fcn.00439027
lea esi, [esp + 0x2e4]
push 0x40
push ebx
push esi
call fcn.00439042
push ebx
call fcn.0043901c
add esp, 0x14
movzx eax, word [esp + 0x2e0]
test eax, eax
je 0x4021cb
push 0xa
push 0
push esi
call fcn.00439250
add esp, 0xc
cmp eax, 0x63
je 0x4021cb
mov ebx, dword [ebp + 8]
cmp ebx, 1
mov esi, dword [ebp + 0xc]
je 0x402a46
lea eax, [esp + 0x122]
push dword [esi + 4]
push 0xff
push eax
call fcn.0043926a
add esp, 0xc
cmp ebx, 3
je 0x4029ea
mov esi, edi
lea edx, [esp + 0x364]
push 0x44d4dc
lea eax, [esp + 0x126]
push eax
push edx
call fcn.0043939c
add esp, 0xc
mov ebx, dword [esp + 0x364]
test ebx, ebx
jne 0x401382
lea eax, [esp + 0x122]
push eax
push str.file__s_not_found_n
call fcn.00438e90
push 0x459134
call fcn.00404a20
add esp, 0xc
mov ebx, dword [esp + 0x2b4]
mov eax, 0xa
mov esi, dword [esp + 0x22c]
add esp, 0x37c
pop edi
mov esp, ebp
pop ebp
ret
push 0
call fcn.004052c0
add esp, 4
call fcn.004053b0
test eax, eax
je 0x4013a2
push str.Warning:_dynamic_adjustment_of_threads_has_been_set_n
call fcn.00438e90
add esp, 4
push 4
call fcn.004052a0
pxor xmm0, xmm0
movaps xmmword [0x45e4c0], xmm0
movaps xmmword [0x45e4d0], xmm0
movaps xmmword [0x45e4e0], xmm0
movaps xmmword [0x45e4f0], xmm0
movaps xmmword [0x45e500], xmm0
movaps xmmword [0x45e510], xmm0
movaps xmmword [0x45e520], xmm0
push 2
push 0
push ebx
call fcn.0043946d
push ebx
call fcn.0043967d
mov dword [esp + 0xa4], eax
push edi
push edi
push ebx
call fcn.0043946d
add esp, 0x20
mov word [esp + 0x2b0], di
mov eax, 0x80
pxor xmm0, xmm0
movaps xmmword [esp + eax + 0x220], xmm0
movaps xmmword [esp + eax + 0x210], xmm0
movaps xmmword [esp + eax + 0x200], xmm0
movaps xmmword [esp + eax + 0x1f0], xmm0
sub eax, 0x40
jne 0x40140d
mov word [esp + 0x230], di
push 0x402
call fcn.00438f9c
add esp, 4
mov ebx, eax
push dword [0x4df918]
push 0x200
push ebx
push 0x44e0ac
push str.cell57
push str.emulator
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
inc eax
cmp eax, 0x200
jb 0x4014bc
mov eax, 0x200
mov edi, eax
push ebx
add edi, 0x200
call fcn.0043901c
lea edx, [edi + edi + 2]
push edx
call fcn.00438f9c
add esp, 8
mov ebx, eax
push dword [0x4df918]
push edi
push ebx
push 0x44e0ac
push str.cell57
push str.emulator
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
inc eax
cmp edi, eax
jbe 0x40147d
xor edi, edi
push ebx
call fcn.00439027
lea eax, [esp + 0x234]
push 0x40
push ebx
push eax
call fcn.00439042
push ebx
call fcn.0043901c
add esp, 0x14
movzx eax, word [esp + 0x230]
test eax, eax
jne 0x4014ee
mov ebx, 3
jmp 0x401504
push 0xa
push 0
lea eax, [esp + 0x238]
push eax
call fcn.00439250
add esp, 0xc
mov ebx, eax
mov eax, dword [esp + 0x90]
add eax, 0xffffff40
mov byte [0x4df95c], bl
test eax, 0xfff
mov dword [esp + 0x90], eax
je 0x401559
push str.Not_a_valid_PVA_dump_file_n
call fcn.00438e90
push 0x459210
call fcn.00404a20
add esp, 8
mov ebx, dword [esp + 0x2b4]
mov eax, 0xa
mov esi, dword [esp + 0x22c]
add esp, 0x37c
pop edi
mov esp, ebp
pop ebp
ret
shr eax, 0xc
movsx edx, ax
mov dword [esp + 0x98], edx
push edx
push str._nNumber_of_Query_Cells___d__n
call fcn.00438e90
add esp, 8
mov edx, edi
mov eax, edx
mov dword [esp + 0x90], ebx
mov ebx, eax
mov dword [esp + 0x94], esi
push dword [esp + 0x364]
push 1
push 2
lea ecx, [ebx + ebx + 0x45dd00]
push ecx
lea esi, [ebx + ebx]
call fcn.0043992c
add esp, 0x10
cmp ebx, 3
jle 0x4015bf
movzx ecx, word [ebx*2 + 0x45dd00]
cmp ecx, 0x303
je 0x4028f3
inc ebx
movzx ebx, bx
cmp ebx, 0x20
jl 0x401588
mov ebx, dword [esp + 0x90]
xor edi, edi
mov esi, dword [esp + 0x94]
push 0x44d558
call fcn.00438e90
add esp, 4
movzx ebx, bl
cmp ebx, 1
jne 0x401600
mov eax, 0x103
mov word [0x45dd04], ax
mov word [0x45dd06], ax
jmp 0x401616
cmp ebx, 3
jne 0x401616
mov eax, 0x303
mov word [0x45dd04], ax
mov word [0x45dd06], ax
mov ebx, edi
push dword [esp + 0x364]
push 1
push 2
lea eax, [ebx + ebx + 0x45dd40]
push eax
call fcn.0043992c
add esp, 0x10
inc ebx
cmp ebx, 0x40
jl 0x401618
movzx eax, word [0x45dd42]
test esi, esi
movzx edx, word [0x45dd40]
mov dword [esp + 0x90], eax
mov dword [esp + 0x94], edx
jne 0x401668
movzx ebx, word [0x45dd44]
mov dword [0x4df91c], ebx
jmp 0x40166e
mov ebx, dword [0x4df91c]
push dword [esp + 0x90]
push str._nDevID___0x_4.4X_n
call fcn.00438e90
push dword [esp + 0x9c]
push str.Serial__0x_4.4X_n
call fcn.00438e90
push ebx
push str.WP______0x_4.4X_n
call fcn.00438e90
push 0x402
mov word [0x45ddc0], di
call fcn.00438f9c
add esp, 0x1c
mov ebx, eax
push dword [0x4df918]
push 0x200
push ebx
push str._HKEY_LOCAL_MACHINESYSTEMCurrentControlSetMultiKeyDumpsxxxx0000_
push str.path
push str.emulator
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
inc eax
cmp eax, 0x200
jb 0x40171c
mov esi, 0x200
push ebx
add esi, 0x200
call fcn.0043901c
lea eax, [esi + esi + 2]
push eax
call fcn.00438f9c
add esp, 8
mov ebx, eax
push dword [0x4df918]
push esi
push ebx
push str._HKEY_LOCAL_MACHINESYSTEMCurrentControlSetMultiKeyDumpsxxxx0000_
push str.path
push str.emulator
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
inc eax
cmp esi, eax
jbe 0x4016df
push ebx
call fcn.00439027
mov esi, eax
push 0x100
push ebx
push 0x45ddc0
call fcn.00439042
push ebx
call fcn.0043901c
add esp, 0x14
mov eax, 0x100
cmp esi, 0x100
cmova esi, eax
lea eax, [esi + esi]
movzx edx, word [eax + 0x45ddae]
cmp edx, 0x78
je 0x40297e
movzx edx, word [eax + 0x45ddb6]
cmp edx, 0x78
je 0x402912
push dword [esp + 0x90]
push str.XXXX_4X.reg
push 0x45e3c0
call fcn.00439949
add esp, 0xc
push 0x402
mov word [0x45dfc0], di
call fcn.00438f9c
add esp, 4
mov ebx, eax
push dword [0x4df918]
push 0x200
push ebx
push str.CellType
push str.accessname
push str.multikey
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
inc eax
cmp eax, 0x200
jb 0x401808
mov esi, 0x200
push ebx
add esi, 0x200
call fcn.0043901c
lea eax, [esi + esi + 2]
push eax
call fcn.00438f9c
add esp, 8
mov ebx, eax
push dword [0x4df918]
push esi
push ebx
push str.CellType
push str.accessname
push str.multikey
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
inc eax
cmp esi, eax
jbe 0x4017cb
push ebx
call fcn.00439027
push 0x100
push ebx
push 0x45dfc0
call fcn.00439042
push ebx
call fcn.0043901c
push 0x402
mov word [0x45e1c0], di
call fcn.00438f9c
add esp, 0x18
mov ebx, eax
push dword [0x4df918]
push 0x200
push ebx
push str.sntMemory
push str.dataname
push str.multikey
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
inc eax
cmp eax, 0x200
jb 0x4018a5
mov esi, 0x200
push ebx
add esi, 0x200
call fcn.0043901c
lea eax, [esi + esi + 2]
push eax
call fcn.00438f9c
add esp, 8
mov ebx, eax
push dword [0x4df918]
push esi
push ebx
push str.sntMemory
push str.dataname
push str.multikey
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
inc eax
cmp esi, eax
jbe 0x401868
push ebx
call fcn.00439027
push 0x100
push ebx
push 0x45e1c0
call fcn.00439042
push ebx
call fcn.0043901c
push 0x459160
call fcn.00404a50
add esp, 0x18
test eax, eax
je 0x4018fe
mov dword [esp + 0x90], 0
lea eax, [esp + 0x90]
push eax
push 0x40254c
push 1
push 0x459160
call fcn.00404a60
add esp, 0x10
jmp 0x4019e8
mov eax, 4
movdqa xmm1, xmmword [0x44d2b0]
movd xmm0, eax
mov eax, edi
pshufd xmm2, xmm0, 0
movdqa xmm0, xmmword [0x44d2a0]
movdqa xmm3, xmm1
movdqa xmm4, xmm1
psrlq xmm3, 0x20
pmuludq xmm4, xmm1
paddd xmm1, xmm2
pmuludq xmm3, xmm3
movdqa xmm5, xmm1
movdqa xmm6, xmm1
psrlq xmm5, 0x20
pand xmm4, xmm0
pmuludq xmm6, xmm1
psllq xmm3, 0x20
pmuludq xmm5, xmm5
paddd xmm1, xmm2
por xmm4, xmm3
movdqa xmm3, xmm1
movdqa xmm7, xmm1
pmuludq xmm3, xmm1
paddd xmm1, xmm2
movdqa xmmword [eax*4 + 0x45e540], xmm4
pand xmm6, xmm0
psllq xmm5, 0x20
movdqa xmm4, xmm1
por xmm6, xmm5
psrlq xmm7, 0x20
psrlq xmm4, 0x20
movdqa xmm5, xmm1
pmuludq xmm7, xmm7
pand xmm3, xmm0
pmuludq xmm5, xmm1
pmuludq xmm4, xmm4
psllq xmm7, 0x20
pand xmm5, xmm0
psllq xmm4, 0x20
por xmm3, xmm7
por xmm5, xmm4
paddd xmm1, xmm2
movdqa xmmword [eax*4 + 0x45e550], xmm6
movdqa xmmword [eax*4 + 0x45e560], xmm3
movdqa xmmword [eax*4 + 0x45e570], xmm5
add eax, 0x10
cmp eax, 0x400
jb 0x40191e
push 0x45918c
call fcn.00404a50
add esp, 4
test eax, eax
je 0x401a25
mov dword [esp + 0x94], 0
lea eax, [esp + 0x94]
push eax
push 0x402200
push 1
push 0x45918c
call fcn.00404a60
add esp, 0x10
jmp 0x401b10
mov eax, 4
movdqa xmm5, xmmword [0x44d2b0]
movdqa xmm4, xmmword [0x44d220]
movdqa xmm3, xmmword [0x44d240]
movd xmm0, eax
mov eax, edi
pshufd xmm0, xmm0, 0
movdqa xmm2, xmmword [0x44d260]
movdqa xmm6, xmmword [0x44d280]
movdqa xmm1, xmmword [0x44d290]
movdqa xmmword [esp + 0xa0], xmm0
movdqa xmm0, xmm5
movdqa xmm7, xmm5
psrld xmm0, 0xf
pand xmm7, xmm4
pand xmm0, xmm4
pxor xmm7, xmm0
movdqa xmm0, xmmword [0x44d230]
pand xmm0, xmm7
pand xmm7, xmm3
psrad xmm0, 1
paddd xmm0, xmm7
movdqa xmm7, xmmword [0x44d250]
pand xmm7, xmm0
pand xmm0, xmm2
psrad xmm7, 2
pand xmm7, xmm4
paddd xmm7, xmm0
movdqa xmm0, xmmword [0x44d270]
pand xmm0, xmm7
pand xmm7, xmm6
psrad xmm0, 4
paddd xmm0, xmm7
movdqa xmm7, xmm0
pand xmm0, xmm1
psrad xmm7, 8
paddd xmm7, xmm0
pand xmm7, xmm4
pslld xmm7, 6
movdqa xmmword [eax*4 + 0x45f640], xmm7
add eax, 4
paddd xmm5, xmmword [esp + 0xa0]
cmp eax, 0x10000
jb 0x401a6e
lea eax, [esp + 0x2b8]
push eax
call fcn.004399eb
add esp, 4
mov word [0x4df944], di
cmp dword [esp + 0x98], 0
jle 0x401feb
mov eax, edi
lea edx, [esp + 0x368]
movdqa xmm0, xmmword [0x44d2a0]
mov dword [esp + 0x9c], eax
mov eax, 0x80
pxor xmm0, xmm0
movaps xmmword [eax + 0x49f730], xmm0
movaps xmmword [eax + 0x49f720], xmm0
movaps xmmword [eax + 0x49f710], xmm0
movaps xmmword [eax + 0x49f700], xmm0
sub eax, 0x40
jne 0x401b52
mov esi, dword [0x4df920]
xor edi, edi
mov ebx, dword [0x4df924]
push dword [esp + 0x364]
push 1
push 4
lea eax, [esp + 0x374]
push eax
call fcn.0043992c
add esp, 0x10
mov edx, dword [esp + 0x368]
xor ecx, ecx
mov eax, edx
shr eax, cl
and eax, 1
add dword [ecx*4 + 0x49f740], eax
inc ecx
cmp ecx, 0x20
jb 0x401ba9
test edi, edi
jne 0x401bcb
mov dword [0x4df920], edx
mov esi, edx
jmp 0x401bd8
cmp edi, 1
jne 0x401bd8
mov dword [0x4df924], edx
mov ebx, edx
inc edi
cmp edi, 0x400
jb 0x401b85
movdqa xmm2, xmmword [0x49f740]
movdqa xmm3, xmmword [0x49f750]
movdqa xmm6, xmm2
pxor xmm7, xmm7
psrlq xmm6, 0x20
movdqa xmm0, xmmword [0x49f760]
movdqa xmm4, xmm3
movdqa xmm1, xmm7
psrlq xmm4, 0x20
pmuludq xmm6, xmm6
paddd xmm1, xmm2
pmuludq xmm2, xmm2
pmuludq xmm4, xmm4
movdqa xmm5, xmm0
paddd xmm1, xmm3
pmuludq xmm3, xmm3
psrlq xmm5, 0x20
pmuludq xmm0, xmm0
pmuludq xmm5, xmm5
movdqa xmmword [esp + 0xa0], xmm1
psllq xmm6, 0x20
movdqa xmm1, xmmword [0x44d2a0]
psllq xmm4, 0x20
pand xmm2, xmm1
pand xmm3, xmm1
por xmm2, xmm6
pand xmm0, xmm1
psllq xmm5, 0x20
por xmm3, xmm4
paddd xmm2, xmm7
por xmm0, xmm5
movdqa xmm4, xmmword [0x49f770]
paddd xmm3, xmm2
movdqa xmm2, xmmword [0x49f760]
paddd xmm0, xmm3
paddd xmm2, xmmword [esp + 0xa0]
movdqa xmm3, xmm4
pmuludq xmm3, xmm4
movdqa xmm5, xmm4
paddd xmm4, xmm2
psrlq xmm5, 0x20
movdqa xmm2, xmmword [0x49f780]
pand xmm3, xmm1
movdqa xmm6, xmm2
movdqa xmm7, xmm2
pmuludq xmm5, xmm5
psrlq xmm6, 0x20
pmuludq xmm7, xmm2
pmuludq xmm6, xmm6
psllq xmm5, 0x20
pand xmm7, xmm1
por xmm3, xmm5
psllq xmm6, 0x20
paddd xmm3, xmm0
por xmm7, xmm6
movdqa xmm6, xmmword [0x49f790]
paddd xmm7, xmm3
movdqa xmm3, xmm6
movdqa xmm5, xmm6
psrlq xmm3, 0x20
paddd xmm2, xmm4
pmuludq xmm5, xmm6
paddd xmm6, xmm2
pmuludq xmm3, xmm3
pand xmm5, xmm1
psllq xmm3, 0x20
movdqa xmm4, xmmword [0x49f7a0]
por xmm5, xmm3
paddd xmm5, xmm7
movdqa xmm7, xmm4
psrlq xmm7, 0x20
movdqa xmm3, xmm4
pmuludq xmm3, xmm4
paddd xmm4, xmm6
pmuludq xmm7, xmm7
pand xmm3, xmm1
psllq xmm7, 0x20
por xmm3, xmm7
paddd xmm3, xmm5
movdqa xmm5, xmmword [0x49f7b0]
movdqa xmm0, xmm5
movdqa xmm2, xmm5
psrlq xmm0, 0x20
pmuludq xmm2, xmm5
paddd xmm5, xmm4
pmuludq xmm0, xmm0
pand xmm2, xmm1
movdqa xmm1, xmm5
psllq xmm0, 0x20
psrldq xmm1, 8
por xmm2, xmm0
paddd xmm5, xmm1
paddd xmm2, xmm3
movdqa xmm4, xmm5
movdqa xmm0, xmm2
psrldq xmm4, 4
psrldq xmm0, 8
paddd xmm5, xmm4
paddd xmm2, xmm0
movd edx, xmm5
movdqa xmm1, xmm2
psrldq xmm1, 4
paddd xmm2, xmm1
imul edx, edx
movd eax, xmm2
shl eax, 5
mov ecx, dword [esp + 0x9c]
sub eax, edx
sar eax, 0xa
cmp eax, 0x2bc
lea edi, [ecx + ecx]
jbe 0x401e2a
push eax
movzx edx, word [edi + 0x4df8c0]
push edx
push str._nCell_0x_2.2X_:_enhanced__sig_d_n
call fcn.00438e90
add esp, 0xc
mov eax, 0x4df928
mov edx, 0x4df940
call fcn.00402e00
test eax, eax
jne 0x401fc3
movzx eax, word [edi + 0x4df8c0]
push eax
push str.No_solution_found_for_enhanced_algo_on_cell__d_n
call fcn.00438e90
add esp, 8
jmp 0x401fc3
push eax
movzx edx, word [edi + 0x4df8c0]
push edx
push str._nCell_0x_2.2X_:_standard__sig_d_n
call fcn.00438e90
add esp, 0xc
cmp esi, 0x80000000
je 0x401f88
test ebx, ebx
je 0x401f88
mov dword [esp + 0x2d8], 0x4df928
push 0xffffffffffffffff
mov dword [0x4df92c], 0
push dword [0x4df930]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
push 0x4df946
push dword [0x4df934]
call dword [sym.imp.KERNEL32.dll_GetConsoleScreenBufferInfo]
movsx ebx, word [0x4df94c]
push dword [0x4df930]
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
mov dword [0x4df938], ebx
xor ebx, ebx
push 0x44d8a8
call fcn.00438e90
add esp, 4
inc ebx
cmp ebx, 0x40
jb 0x401ea3
push 0x44d8ac
call fcn.00438e90
push 0x4591b8
call fcn.00404a50
add esp, 8
test eax, eax
je 0x401eef
lea eax, [esp + 0x2d8]
push eax
push fcn.004027cd
push 1
push 0x4591b8
call fcn.00404a60
add esp, 0x10
jmp 0x401f2e
push dword [esp + 0x2dc]
push 0x4591b8
call fcn.00404aa0
lea eax, [esp + 0x2e0]
lea edx, [esp + 0x2e4]
push eax
push 0x4df93c
push edx
call fcn.004027cd
push dword [esp + 0x2f0]
push 0x4591b8
call fcn.00404dd0
add esp, 0x1c
cmp dword [0x4df92c], 1
je 0x401f5b
movzx edi, word [0x4df944]
mov dword [esp + 0x9c], edi
add edi, edi
movzx eax, word [edi + 0x4df8c0]
push eax
push str._nCell_0x_2.2X_not_solved._May_be_inactive__secure_tunnel__or_AES_cell_algo_n
call fcn.00438e90
jmp 0x401f9a
push dword [0x4df91c]
mov ebx, dword [0x4df928]
push ebx
push str._nDescriptor__0x_8.8X_WP__0x_4.4X_n
call fcn.00438e90
add esp, 0xc
movzx eax, word [0x4df944]
mov dword [esp + 0x9c], eax
lea edi, [eax + eax]
jmp 0x401fa9
movzx eax, word [edi + 0x4df8c0]
push eax
push str._nCell_0x_2.2X_has_incorrect_data_._May_be_inactive__secure_tunnel__or_AES_cell_algo_n
call fcn.00438e90
add esp, 8
mov dword [0x4df928], 0
xor ebx, ebx
movzx eax, word [edi + 0x4df8c0]
mov word [eax*2 + 0x45dd40], bx
shr ebx, 0x10
mov word [eax*2 + 0x45dd42], bx
mov eax, dword [esp + 0x9c]
inc eax
movzx edx, ax
mov dword [esp + 0x9c], edx
mov word [0x4df944], dx
cmp edx, dword [esp + 0x98]
jl 0x401b4d
xor edi, edi
lea eax, [esp + 0x2c8]
push eax
call fcn.004399eb
add esp, 4
mov edx, dword [esp + 0x2c8]
sub edx, dword [esp + 0x2b8]
mov eax, dword [esp + 0x2cc]
sbb eax, dword [esp + 0x2bc]
push edi
push 0x3e8
push eax
push edx
call fcn.00439b60
movzx ebx, word [esp + 0x2d0]
mov esi, edi
movzx ecx, word [esp + 0x2c0]
sub ebx, ecx
sbb esi, 0
add eax, ebx
mov dword [esp + 0x98], eax
adc edx, esi
mov dword [esp + 0x9c], edx
fild qword [esp + 0x98]
fstp qword [esp + 0xa0]
movsd xmm0, qword [esp + 0xa0]
divsd xmm0, qword [0x44d2c0]
mov dword [esp], str._nProcessing_time__8.3f_seconds_n
movsd qword [esp + 4], xmm0
call fcn.00438e90
mov ecx, dword [0x4df91c]
mov eax, 0x45dd00
mov edx, 0x45dd40
mov word [0x45dd48], cx
call fcn.00403520
mov word [esp + 0x120], di
mov eax, 0x80
pxor xmm0, xmm0
movaps xmmword [esp + eax + 0x90], xmm0
movaps xmmword [esp + eax + 0x80], xmm0
movaps xmmword [esp + eax + 0x70], xmm0
movaps xmmword [esp + eax + 0x60], xmm0
sub eax, 0x40
jne 0x4020a7
mov word [esp + 0xa0], di
push 0x402
call fcn.00438f9c
add esp, 4
mov ebx, eax
push dword [0x4df918]
push 0x200
push ebx
push 0x44e0ac
push 0x44d8a0
push str.emulator
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
inc eax
cmp eax, 0x200
jb 0x40214c
mov esi, 0x200
push ebx
add esi, 0x200
call fcn.0043901c
lea eax, [esi + esi + 2]
push eax
call fcn.00438f9c
add esp, 8
mov ebx, eax
push dword [0x4df918]
push esi
push ebx
push 0x44e0ac
push 0x44d8a0
push str.emulator
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
inc eax
cmp esi, eax
jbe 0x40210f
push ebx
call fcn.00439027
lea esi, [esp + 0xa4]
push 0x40
push ebx
push esi
call fcn.00439042
push ebx
call fcn.0043901c
add esp, 0x14
movzx eax, word [esp + 0xa0]
test eax, eax
je 0x402197
push 0xa
push 0
push esi
call fcn.00439250
add esp, 0xc
test eax, eax
je 0x402197
mov eax, 0x45dd00
mov edx, 0x45dd40
call fcn.00404370
push dword [esp + 0x364]
call fcn.00439c01
push 0x4591e4
call fcn.00404a20
add esp, 8
mov ebx, dword [esp + 0x2b4]
xor eax, eax
mov esi, dword [esp + 0x22c]
add esp, 0x37c
pop edi
mov esp, ebp
pop ebp
ret
push str.problem_with_dmp2mkey.ini_n
call fcn.00438e90
push 0x4590b0
call fcn.00404a20
add esp, 8
mov ebx, dword [esp + 0x2b4]
mov eax, 0x3c
mov esi, dword [esp + 0x22c]
add esp, 0x37c
pop edi
mov esp, ebp
pop ebp
ret
push esi
push str.0x_2.2X
call fcn.00438e90
add esp, 8
mov word [edi*2 + 0x4df8c0], si
inc edi
movzx edi, di
jmp 0x4015bf
movzx edx, word [eax + 0x45ddb8]
cmp edx, 0x78
jne 0x40176e
movzx edx, word [eax + 0x45ddba]
cmp edx, 0x78
jne 0x40176e
movzx eax, word [eax + 0x45ddbc]
cmp eax, 0x78
jne 0x40176e
push dword [esp + 0x90]
push str.0000_4X_
push 0x100
lea eax, [esi + esi + 0x45ddae]
push eax
call fcn.004034e0
push dword [esp + 0xa0]
push str.0000_4X.reg
push 0x45e3c0
call fcn.00439949
add esp, 0x1c
jmp 0x401787
movzx edx, word [eax + 0x45ddb0]
cmp edx, 0x78
jne 0x40175e
movzx edx, word [eax + 0x45ddb2]
cmp edx, 0x78
jne 0x40175e
movzx edx, word [eax + 0x45ddb4]
cmp edx, 0x78
jne 0x40175e
push dword [esp + 0x90]
push str._4X0000_
push 0x100
lea eax, [esi + esi + 0x45ddae]
push eax
call fcn.004034e0
push dword [esp + 0xa0]
push str._4X0000.reg
push 0x45e3c0
call fcn.00439949
add esp, 0x1c
jmp 0x401787
push 0x10
push 0
push dword [esi + 8]
call fcn.00439f52
add esp, 0xc
mov dword [0x4df91c], eax
cmp eax, 0xffffffff
je 0x402a11
test eax, eax
je 0x402a11
mov esi, 1
jmp 0x40131d
push str.WP_incorrectly_formatted_n
call fcn.00438e90
push 0x459108
call fcn.00404a20
add esp, 8
mov ebx, dword [esp + 0x2b4]
mov eax, 0xa
mov esi, dword [esp + 0x22c]
add esp, 0x37c
pop edi
mov esp, ebp
pop ebp
ret
push dword [esi]
push str._n_Usage_:__s_PVA_dump_file__0xWP__n__If_WP_not_provided_it_will_be_taken_from_dump_file._n__If_WP_is_not_in_dump_file_it_will_be_calculated_n__provided_Simple_Algorithms_are_present._n
call fcn.00438e90
push 0x4590dc
call fcn.00404a20
add esp, 0xc
mov ebx, dword [esp + 0x2b4]
mov eax, 0xa
mov esi, dword [esp + 0x22c]
add esp, 0x37c
pop edi
mov esp, ebp
pop ebp
ret