Function at 0x4d1340
Capabilities:
Create directory

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4fd367
mov eax, dword fs:[0]
push eax
sub esp, 0x9dc
mov eax, dword [0x57b070]
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 dword [ebp - 0x9d0], edi
mov esi, dword [ebp + 0xc]
cmp esi, 3
mov edx, dword [ebp + 8]
sete byte [ebp - 0x9bd]
mov dword [ebp - 0xac], 0
xor eax, eax
mov dword [ebp - 0xa8], 7
mov word [ebp - 0xbc], ax
mov dword [ebp - 4], eax
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x6c], 7
mov word [ebp - 0x80], ax
mov ecx, edx
mov byte [ebp - 4], 1
lea eax, [ecx + 2]
mov dword [ebp - 0x9d4], eax
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4d13c2
sub ecx, dword [ebp - 0x9d4]
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x80]
call fcn.00418a60
lea ecx, [ebp - 0x80]
call fcn.004d4830
xor eax, eax
mov dword [ebp - 0xc4], 0
mov dword [ebp - 0xc0], 7
mov word [ebp - 0xd4], ax
mov byte [ebp - 4], 3
xorps xmm0, xmm0
push eax
mov dword [ebp - 0x9c8], eax
movups xmmword [ebp - 0x50], xmm0
movups xmmword [ebp - 0x40], xmm0
movups xmmword [ebp - 0x30], xmm0
movups xmmword [ebp - 0x20], xmm0
call fcn.004b35c1
mov dword [ebp - 0x9e4], eax
lea eax, [ebp - 0x9e4]
push eax
mov dword [ebp - 0x9e0], edx
call fcn.004b430f
add esp, 4
mov dword [ebp - 0x9d4], eax
lea eax, [ebp - 0x9c8]
push eax
lea eax, [ebp - 0xd4]
push eax
lea eax, [ebp - 0xbc]
push eax
call fcn.004d30a0
mov ecx, dword [ebp - 0x9d4]
mov byte [ebp - 0x9b9], al
test ecx, ecx
je 0x4d14a4
push dword [ecx]
mov eax, dword [ecx + 0x10]
push dword [ecx + 4]
inc eax
push dword [ecx + 8]
push dword [ecx + 0xc]
push eax
mov eax, dword [ecx + 0x14]
add eax, 0x76c
push eax
push str._04d_02d_02d_02d_02d_02d
lea eax, [ebp - 0x50]
push 0x10
push eax
call fcn.00441820
mov al, byte [ebp - 0x9b9]
add esp, 0x24
test esi, esi
jne 0x4d153f
test al, al
je 0x4d153a
mov eax, dword [ebp - 0x9e4]
lea ecx, [ebp - 0xd4]
cmp dword [ebp - 0xc0], 8
mov dword [ebp - 0x9c4], eax
mov eax, dword [ebp - 0x9e0]
cmovae ecx, dword [ebp - 0xd4]
mov dword [ebp - 0x9e8], eax
call fcn.004d5dd0
mov ecx, eax
mov dword [ebp - 0x9d4], eax
and ecx, edx
mov dword [ebp - 0x9d8], edx
cmp ecx, 0xffffffff
je 0x4d153a
mov ecx, dword [ebp - 0x9e8]
cmp edx, ecx
jg 0x4d153a
mov eax, dword [ebp - 0x9c4]
mov edx, dword [ebp - 0x9d4]
jl 0x4d1516
cmp edx, eax
ja 0x4d153a
sub eax, edx
push 0
sbb ecx, dword [ebp - 0x9d8]
push 0x15180
push ecx
push eax
call fcn.004cbb70
mov ecx, 1
cmp eax, ecx
cmovl ecx, esi
mov esi, ecx
jmp 0x4d153f
mov esi, 1
cmp dword [0x57e620], 8
mov edx, 0x57e60c
mov dword [ebp - 0x58], 0
cmovae edx, dword [0x57e60c]
xor eax, eax
mov dword [ebp - 0x54], 7
mov word [ebp - 0x68], ax
mov ecx, edx
mov byte [ebp - 4], 4
lea eax, [ecx + 2]
mov dword [ebp - 0x9d8], eax
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4d1575
sub ecx, dword [ebp - 0x9d8]
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x68]
call fcn.00418a60
lea ecx, [ebp - 0x68]
call fcn.004d4830
push 1
push 0x5528b0
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 5
call fcn.004442e0
push 6
push 0x5563c0
lea ecx, [ebp - 0x68]
call fcn.004442e0
lea ecx, [ebp - 0x68]
call fcn.004d4830
cmp dword [ebp - 0x54], 8
lea eax, [ebp - 0x68]
cmovae eax, dword [ebp - 0x68]
push eax
call fcn.004b3faa
add esp, 4
cmp eax, 0xffffffff
jne 0x4d1606
xorps xmm0, xmm0
movups xmmword [ebp - 0xa0], xmm0
movups xmmword [ebp - 0x90], xmm0
call fcn.004a93fd
push dword [eax]
lea eax, [ebp - 0xa0]
push 0x20
push eax
call fcn.004b4020
add esp, 0xc
cmp byte [edi + 0x1a1], 0
je 0x4d16df
mov eax, dword [edi + 0x128]
cmp eax, 0x4c
jne 0x4d16df
mov edi, dword [edi + 0x124]
test edi, edi
je 0x4d16df
xor ecx, ecx
cmp eax, eax
cmovne edi, ecx
mov edi, dword [edi + 0x10]
test edi, edi
jns 0x4d16e1
lea eax, [ebp - 0x9dc]
push eax
call fcn.004b35c1
lea eax, [ebp - 0x9dc]
push eax
lea eax, [ebp - 0xa4]
push eax
call fcn.004b4336
push dword [ebp - 0xa4]
cmp dword [0x57e638], 8
mov ecx, 0x57e624
push dword [ebp - 0xa0]
cmovae ecx, dword [0x57e624]
push dword [ebp - 0x9c]
mov eax, dword [ebp - 0x94]
push dword [ebp - 0x98]
inc eax
push eax
mov eax, dword [ebp - 0x90]
add eax, 0x76c
push eax
push ecx
push 0x5835b8
push str.__s___s___04d__02d__02d__02d:_02d:_02d_
call fcn.004df180
push 0x2d8
push str.t_usrDictV3Core::UsrBackup
push str.__S_L:_d__
call fcn.004df180
push edi
push esi
push str.state:_d__nUsrWordNum___0__usrwordnum_d
call fcn.004df180
add esp, 0x48
mov byte [ebp - 0x9b9], 0
jmp 0x4d2608
xor edi, edi
cmp esi, 5
je 0x4d22ab
cmp byte [ebp - 0x9b9], 0
je 0x4d22ab
test esi, esi
jne 0x4d175f
cmp edi, dword [ebp - 0x9c8]
jl 0x4d175f
push dword [ebp - 0x9bd]
mov ecx, dword [ebp - 0x9d0]
lea eax, [ebp - 0x80]
push eax
call fcn.004d2660
test al, al
jne 0x4d2601
call fcn.004df100
push 0x3ef
push str.t_usrDictV3Core::UsrBackup
push str.__S_L:_d__
call fcn.004df180
cmp dword [ebp - 0x6c], 8
lea eax, [ebp - 0x80]
cmovae eax, dword [ebp - 0x80]
push eax
push esi
push str.state:_d__WriteToDict_false__topath:_s
call fcn.004df180
add esp, 0x18
mov byte [ebp - 0x9b9], 0
jmp 0x4d2608
xor eax, eax
mov dword [ebp - 0x88], 0
mov dword [ebp - 0x84], 7
mov word [ebp - 0x98], ax
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x98]
cmp dword [0x57e620], 8
mov edx, 0x57e60c
push str.usrv3merge
cmovae edx, dword [0x57e60c]
call fcn.004cfc70
add esp, 4
test al, al
jne 0x4d17e7
call fcn.004df100
push 0x32a
push str.t_usrDictV3Core::UsrBackup
push str.__S_L:_d__
call fcn.004df180
push str.GetTempPath_false
call fcn.004df180
add esp, 0x10
lea ecx, [ebp - 0x98]
call fcn.004e9cc0
mov byte [ebp - 0x9b9], 0
jmp 0x4d2608
push dword [ebp - 0x9bd]
mov ecx, dword [ebp - 0x9d0]
lea eax, [ebp - 0x9b9]
push eax
lea eax, [ebp - 0x9c8]
mov dword [ebp - 0x9c4], 0
push eax
lea eax, [ebp - 0x9c4]
mov byte [ebp - 0x9b9], 0
push eax
lea eax, [ebp - 0x98]
push eax
lea eax, [ebp - 0xbc]
push eax
call fcn.004d2a70
push 0x110
mov byte [ebp - 0x9c9], al
lea eax, [ebp - 0x9b4]
push 0
push eax
mov dword [ebp - 0x9b8], str.kernelDetect.ini
call fcn.004a64e0
add esp, 0xc
lea ecx, [ebp - 0x9b8]
call fcn.004ec190
inc dword [ebp - 0x8bc]
lea ecx, [ebp - 0x9b8]
call fcn.004ed310
cmp byte [ebp - 0x9c9], 0
mov ecx, dword [ebp - 0x9c8]
mov eax, dword [ebp - 0x9c4]
jne 0x4d1a81
push 0x110
lea eax, [ebp - 0x9b4]
mov dword [ebp - 0x9b8], str.kernelDetect.ini
push 0
push eax
call fcn.004a64e0
add esp, 0xc
lea ecx, [ebp - 0x9b8]
call fcn.004ec190
inc dword [ebp - 0x8b8]
lea ecx, [ebp - 0x9b8]
call fcn.004ed310
call fcn.004df100
push 0x336
push str.t_usrDictV3Core::UsrBackup
push str.__S_L:_d__
call fcn.004df180
push esi
push str.state:_d__merge_false
call fcn.004df180
add esp, 0x14
push edi
push 0x5563b4
lea eax, [ebp - 0x30]
push 0x10
push eax
call fcn.00441820
add esp, 0x10
cmp word [ebp - 0x30], 0
je 0x4d1944
push 1
push 0x5528b0
lea ecx, [ebp - 0x68]
call fcn.004442e0
lea ecx, [ebp - 0x30]
lea edx, [ecx + 2]
nop word [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4d1920
sub ecx, edx
lea eax, [ebp - 0x30]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x68]
call fcn.004442e0
lea ecx, [ebp - 0x68]
call fcn.004d4830
push 1
push 0x5563bc
lea ecx, [ebp - 0x68]
call fcn.004442e0
lea ecx, [ebp - 0x68]
call fcn.004d4830
cmp word [str.sgim_usr_v3new.bin], 0
je 0x4d197c
push 0x12
push str.sgim_usr_v3new.bin
lea ecx, [ebp - 0x68]
call fcn.004442e0
lea ecx, [ebp - 0x68]
call fcn.004d4830
push 1
push 0x5563bc
lea ecx, [ebp - 0x68]
call fcn.004442e0
lea ecx, [ebp - 0x68]
call fcn.004d4830
cmp word [ebp - 0x50], 0
je 0x4d19c4
lea ecx, [ebp - 0x50]
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4d19a0
sub ecx, edx
lea eax, [ebp - 0x50]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x68]
call fcn.004442e0
lea ecx, [ebp - 0x68]
call fcn.004d4830
cmp edi, dword [ebp - 0x9c8]
jl 0x4d1f85
cmp dword [ebp - 0x54], 8
lea eax, [ebp - 0x68]
mov edi, dword [ebp - 0x9d0]
mov ecx, dword [ebp - 0x9bd]
cmovae eax, dword [ebp - 0x68]
push ecx
push eax
lea ecx, [edi + 0xc]
call fcn.004e9130
test al, al
je 0x4d1ec0
cmp dword [ebp - 0x54], 8
lea eax, [ebp - 0x68]
cmovae eax, dword [ebp - 0x68]
push eax
call fcn.004d2910
mov dword [ebp - 0x9d8], eax
test eax, eax
je 0x4d1e3b
lea ecx, [ebp - 0x68]
call fcn.004d0840
call fcn.004df100
push 0x383
push str.t_usrDictV3Core::UsrBackup
push str.__S_L:_d__
call fcn.004df180
cmp dword [ebp - 0x54], 8
lea eax, [ebp - 0x68]
cmovae eax, dword [ebp - 0x68]
push eax
push dword [ebp - 0x9d8]
push esi
push str.state:_d__WriteDict_check_dict_false__errcode:_d__topath:_s
call fcn.004df180
add esp, 0x1c
lea eax, [ebp - 0x80]
mov ecx, edi
push dword [ebp - 0x9bd]
push eax
call fcn.004d2660
test al, al
jne 0x4d1e19
call fcn.004df100
push 0x388
jmp 0x4d222b
cmp eax, edi
je 0x4d1afe
push 0x110
lea eax, [ebp - 0x9b4]
mov dword [ebp - 0x9b8], str.kernelDetect.ini
push 0
push eax
call fcn.004a64e0
add esp, 0xc
lea ecx, [ebp - 0x9b8]
call fcn.004ec190
inc dword [ebp - 0x8b4]
lea ecx, [ebp - 0x9b8]
call fcn.004ed310
call fcn.004df100
push 0x33b
push str.t_usrDictV3Core::UsrBackup
push str.__S_L:_d__
call fcn.004df180
mov ecx, dword [ebp - 0x9c4]
push edi
push ecx
push esi
push str.state:_d__merge_nMergedWordNum___p_nWordNumAffterSave__nMergedWordNum:_d__nWordNumAffterSave:_d_r_n
call fcn.004df180
mov eax, dword [ebp - 0x9c4]
add esp, 0x1c
mov ecx, dword [ebp - 0x9c8]
cmp eax, edi
mov dl, byte [ebp - 0x9b9]
jl 0x4d1b0a
cmp eax, ecx
jge 0x4d1b12
test dl, dl
je 0x4d18ea
cmp edi, ecx
jge 0x4d1bca
test dl, dl
jne 0x4d1bca
call fcn.004df100
push 0x344
push str.t_usrDictV3Core::UsrBackup
push str.__S_L:_d__
call fcn.004df180
add esp, 0xc
call fcn.00444a30
push str.UsrDict
mov ecx, eax
call fcn.004dbb90
mov ecx, dword [ebp - 0x9c8]
push ecx
mov ecx, dword [ebp - 0x9c4]
push edi
push ecx
movzx eax, al
push eax
push esi
push str.state:_d__backup__word_is_small__version_is_right:_d__mergenum:_d__wordnum:_d__backupwordnum:_d_r_n
call fcn.004df180
add esp, 0x18
lea ecx, [ebp - 0x9b8]
call fcn.004ee740
test esi, esi
jne 0x4d1b87
inc dword [ebp - 0x988]
jmp 0x4d1bb9
cmp esi, 1
jne 0x4d1b94
inc dword [ebp - 0x978]
jmp 0x4d1bb9
cmp esi, 2
jne 0x4d1ba1
inc dword [ebp - 0x968]
jmp 0x4d1bb9
cmp esi, 3
jne 0x4d1bae
inc dword [ebp - 0x958]
jmp 0x4d1bb9
cmp esi, 4
jne 0x4d1bb9
inc dword [ebp - 0x948]
lea ecx, [ebp - 0x9b8]
call fcn.004ed310
mov eax, dword [ebp - 0x9c4]
push eax
push 0x5563b4
lea eax, [ebp - 0x30]
push 0x10
push eax
call fcn.00441820
add esp, 0x10
cmp word [ebp - 0x30], 0
je 0x4d1c24
push 1
push 0x5528b0
lea ecx, [ebp - 0x68]
call fcn.004442e0
lea ecx, [ebp - 0x30]
lea edx, [ecx + 2]
nop word [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4d1c00
sub ecx, edx
lea eax, [ebp - 0x30]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x68]
call fcn.004442e0
lea ecx, [ebp - 0x68]
call fcn.004d4830
push 1
push 0x5563bc
lea ecx, [ebp - 0x68]
call fcn.004442e0
lea ecx, [ebp - 0x68]
call fcn.004d4830
cmp word [str.sgim_usr_v3new.bin], 0
je 0x4d1c5c
push 0x12
push str.sgim_usr_v3new.bin
lea ecx, [ebp - 0x68]
call fcn.004442e0
lea ecx, [ebp - 0x68]
call fcn.004d4830
push 1
push 0x5563bc
lea ecx, [ebp - 0x68]
call fcn.004442e0
lea ecx, [ebp - 0x68]
call fcn.004d4830
cmp word [ebp - 0x50], 0
je 0x4d1ca4
lea ecx, [ebp - 0x50]
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4d1c80
sub ecx, edx
lea eax, [ebp - 0x50]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x68]
call fcn.004442e0
lea ecx, [ebp - 0x68]
call fcn.004d4830
lea edx, [ebp - 0x68]
lea ecx, [ebp - 0x98]
call fcn.004d0500
test al, al
jne 0x4d1d00
call fcn.004df100
push 0x354
push str.t_usrDictV3Core::UsrBackup
push str.__S_L:_d__
call fcn.004df180
cmp dword [ebp - 0x54], 8
lea ecx, [ebp - 0x68]
lea eax, [ebp - 0x98]
cmovae ecx, dword [ebp - 0x68]
cmp dword [ebp - 0x84], 8
push ecx
cmovae eax, dword [ebp - 0x98]
push eax
push esi
push str.state:_d__CopyToDict_false__frompath:_s__topath:_s_r_n
call fcn.004df180
add esp, 0x1c
jmp 0x4d1d0b
lea ecx, [ebp - 0xbc]
call fcn.004d0840
lea edx, [ebp - 0x80]
lea ecx, [ebp - 0x98]
call fcn.004d02d0
test al, al
jne 0x4d229b
call fcn.004df100
push 0x35e
push str.t_usrDictV3Core::UsrBackup
push str.__S_L:_d__
call fcn.004df180
cmp dword [ebp - 0x6c], 8
lea ecx, [ebp - 0x80]
lea eax, [ebp - 0x98]
cmovae ecx, dword [ebp - 0x80]
cmp dword [ebp - 0x84], 8
push ecx
cmovae eax, dword [ebp - 0x98]
push eax
push esi
push str.state:_d__MoveToDict_false__frompath:_s__topath:_s
call fcn.004df180
add esp, 0x1c
lea ecx, [ebp - 0x68]
call fcn.004d08b0
test al, al
je 0x4d229b
lea edx, [ebp - 0x80]
lea ecx, [ebp - 0x68]
call fcn.004d0500
test al, al
jne 0x4d229b
call fcn.004df100
push 0x363
push str.t_usrDictV3Core::UsrBackup
push str.__S_L:_d__
call fcn.004df180
cmp dword [ebp - 0x6c], 8
lea ecx, [ebp - 0x80]
lea eax, [ebp - 0x68]
cmovae ecx, dword [ebp - 0x80]
cmp dword [ebp - 0x54], 8
push ecx
cmovae eax, dword [ebp - 0x68]
push eax
push esi
push str.state:_d__CopyToDict_false__frompath:_s__topath:_s_r_n
call fcn.004df180
mov ecx, dword [ebp - 0x9bd]
lea eax, [ebp - 0x80]
add esp, 0x1c
push ecx
mov ecx, dword [ebp - 0x9d0]
push eax
call fcn.004d2660
test al, al
jne 0x4d229b
call fcn.004df100
push 0x368
push str.t_usrDictV3Core::UsrBackup
push str.__S_L:_d__
call fcn.004df180
cmp dword [ebp - 0x6c], 8
lea eax, [ebp - 0x80]
cmovae eax, dword [ebp - 0x80]
push eax
push esi
push str.state:_d__WriteToDict_false__topath:_s_r_n
jmp 0x4d224c
lea edx, [ebp - 0x68]
lea ecx, [ebp - 0x80]
call fcn.004d0500
test al, al
jne 0x4d229b
call fcn.004df100
push 0x390
jmp 0x4d1f40
lea ecx, [ebp - 0xbc]
call fcn.004d0840
lea edx, [ebp - 0x80]
lea ecx, [ebp - 0x68]
call fcn.004d0500
test al, al
jne 0x4d229b
call fcn.004df100
push 0x39b
push str.t_usrDictV3Core::UsrBackup
push str.__S_L:_d__
call fcn.004df180
cmp dword [ebp - 0x6c], 8
lea ecx, [ebp - 0x80]
lea eax, [ebp - 0x68]
cmovae ecx, dword [ebp - 0x80]
cmp dword [ebp - 0x54], 8
push ecx
cmovae eax, dword [ebp - 0x68]
push eax
push esi
push str.state:_d__CopyToDict_false__frompath:_s__topath:_s
call fcn.004df180
add esp, 0x1c
lea eax, [ebp - 0x80]
mov ecx, edi
push dword [ebp - 0x9bd]
push eax
call fcn.004d2660
test al, al
jne 0x4d229b
call fcn.004df100
push 0x3a0
jmp 0x4d222b
call fcn.004df100
push 0x3a8
push str.t_usrDictV3Core::UsrBackup
push str.__S_L:_d__
call fcn.004df180
cmp dword [ebp - 0x54], 8
lea ecx, [ebp - 0x68]
lea eax, [ebp - 0x80]
cmovae ecx, dword [ebp - 0x68]
cmp dword [ebp - 0x6c], 8
push ecx
cmovae eax, dword [ebp - 0x80]
push eax
push esi
push str.state:_d__WriteDict_false__frompath:_s__topath:_s
call fcn.004df180
add esp, 0x1c
lea eax, [ebp - 0x80]
mov ecx, edi
push dword [ebp - 0x9bd]
push eax
call fcn.004d2660
test al, al
jne 0x4d1f23
call fcn.004df100
push 0x3ad
jmp 0x4d222b
lea edx, [ebp - 0x68]
lea ecx, [ebp - 0x80]
call fcn.004d0500
test al, al
jne 0x4d229b
call fcn.004df100
push 0x3b5
push str.t_usrDictV3Core::UsrBackup
push str.__S_L:_d__
call fcn.004df180
cmp dword [ebp - 0x54], 8
lea ecx, [ebp - 0x68]
lea eax, [ebp - 0x80]
cmovae ecx, dword [ebp - 0x68]
cmp dword [ebp - 0x6c], 8
push ecx
cmovae eax, dword [ebp - 0x80]
push eax
push esi
push str.state:_d__CopyToDict_false__frompath:_s__topath:_s
call fcn.004df180
add esp, 0x1c
lea ecx, [ebp - 0x98]
call fcn.004e9cc0
jmp 0x4d2601
call fcn.004df100
push 0x3bc
push str.t_usrDictV3Core::UsrBackup
push str.__S_L:_d__
call fcn.004df180
add esp, 0xc
call fcn.00444a30
push str.UsrDict
mov ecx, eax
call fcn.004dbb90
mov ecx, dword [ebp - 0x9c8]
push ecx
mov ecx, dword [ebp - 0x9c4]
push edi
push ecx
movzx eax, al
push eax
push esi
push str.state:_d__backup__word_is_small__version_is_right:_d__mergenum:_d__wordnum:_d__backupwordnum:_d_r_n
call fcn.004df180
push 0x110
lea eax, [ebp - 0x9b4]
mov dword [ebp - 0x9b8], str.kernelDetect.ini
push 0
push eax
call fcn.004a64e0
add esp, 0x24
lea ecx, [ebp - 0x9b8]
call fcn.004ec190
test esi, esi
jne 0x4d2007
inc dword [ebp - 0x988]
jmp 0x4d2039
cmp esi, 1
jne 0x4d2014
inc dword [ebp - 0x978]
jmp 0x4d2039
cmp esi, 2
jne 0x4d2021
inc dword [ebp - 0x968]
jmp 0x4d2039
cmp esi, 3
jne 0x4d202e
inc dword [ebp - 0x958]
jmp 0x4d2039
cmp esi, 4
jne 0x4d2039
inc dword [ebp - 0x948]
lea ecx, [ebp - 0x9b8]
call fcn.004ed310
cmp dword [ebp - 0xa8], 8
lea eax, [ebp - 0xbc]
cmovae eax, dword [ebp - 0xbc]
push eax
call fcn.004d2910
mov dword [ebp - 0x9d8], eax
test eax, eax
je 0x4d21a6
call fcn.004df100
push 0x3c3
push str.t_usrDictV3Core::UsrBackup
push str.__S_L:_d__
call fcn.004df180
cmp dword [ebp - 0xa8], 8
lea eax, [ebp - 0xbc]
cmovae eax, dword [ebp - 0xbc]
push eax
push dword [ebp - 0x9d8]
push str.CheckDict_err__errcode:_d__desname:_s_r_n
call fcn.004df180
add esp, 0x18
lea ecx, [ebp - 0xbc]
call fcn.004d0840
push dword [ebp - 0x9bd]
mov ecx, dword [ebp - 0x9d0]
lea eax, [ebp - 0x80]
push eax
call fcn.004d2660
test al, al
jne 0x4d20e0
call fcn.004df100
push 0x3c9
jmp 0x4d222b
lea edx, [ebp - 0x68]
lea ecx, [ebp - 0x80]
call fcn.004d0500
test al, al
jne 0x4d212e
call fcn.004df100
push 0x3d1
push str.t_usrDictV3Core::UsrBackup
push str.__S_L:_d__
call fcn.004df180
cmp dword [ebp - 0x54], 8
lea ecx, [ebp - 0x68]
lea eax, [ebp - 0x80]
cmovae ecx, dword [ebp - 0x68]
cmp dword [ebp - 0x6c], 8
push ecx
cmovae eax, dword [ebp - 0x80]
push eax
push esi
push str.state:_d__CopyToDict_false__frompath:_s__topath:_s
call fcn.004df180
add esp, 0x1c
call fcn.004df100
push 0x3e5
push str.t_usrDictV3Core::UsrBackup
push str.__S_L:_d__
call fcn.004df180
push dword [ebp - 0x9c8]
push edi
push dword [ebp - 0x9c4]
push esi
push str.state:_d__backup_merge_false__mergenum:_d__usrwordnum:_d__backupwordnum:_d_r_n
call fcn.004df180
push 0x110
lea eax, [ebp - 0x9b4]
mov dword [ebp - 0x9b8], str.kernelDetect.ini
push 0
push eax
call fcn.004a64e0
add esp, 0x2c
lea ecx, [ebp - 0x9b8]
call fcn.004ec190
test esi, esi
je 0x4d2290
cmp esi, 1
jne 0x4d226b
inc dword [ebp - 0x97c]
jmp 0x4d2290
lea edx, [ebp - 0x80]
lea ecx, [ebp - 0xbc]
call fcn.004d0500
test al, al
jne 0x4d212e
call fcn.004df100
push 0x3da
push str.t_usrDictV3Core::UsrBackup
push str.__S_L:_d__
call fcn.004df180
cmp dword [ebp - 0x6c], 8
lea ecx, [ebp - 0x80]
lea eax, [ebp - 0xbc]
cmovae ecx, dword [ebp - 0x80]
cmp dword [ebp - 0xa8], 8
push ecx
cmovae eax, dword [ebp - 0xbc]
push eax
push esi
push str.state:_d__CopyToDict_false__frompath:_s__topath:_s
call fcn.004df180
mov ecx, dword [ebp - 0x9d0]
lea eax, [ebp - 0x80]
add esp, 0x1c
push dword [ebp - 0x9bd]
push eax
call fcn.004d2660
test al, al
jne 0x4d212e
call fcn.004df100
push 0x3df
push str.t_usrDictV3Core::UsrBackup
push str.__S_L:_d__
call fcn.004df180
cmp dword [ebp - 0x6c], 8
lea eax, [ebp - 0x80]
cmovae eax, dword [ebp - 0x80]
push eax
push esi
push str.state:_d__WriteToDict_false__topath:_s
call fcn.004df180
add esp, 0x18
lea ecx, [ebp - 0x98]
call fcn.004e9cc0
mov byte [ebp - 0x9b9], 0
jmp 0x4d2608
cmp esi, 2
jne 0x4d2278
inc dword [ebp - 0x96c]
jmp 0x4d2290
cmp esi, 3
jne 0x4d2285
inc dword [ebp - 0x95c]
jmp 0x4d2290
cmp esi, 4
jne 0x4d2290
inc dword [ebp - 0x94c]
lea ecx, [ebp - 0x9b8]
call fcn.004ed310
lea ecx, [ebp - 0x98]
call fcn.004e9cc0
jmp 0x4d2601
push edi
push 0x5563b4
lea eax, [ebp - 0x30]
push 0x10
push eax
call fcn.00441820
add esp, 0x10
cmp word [ebp - 0x30], 0
je 0x4d2304
push 1
push 0x5528b0
lea ecx, [ebp - 0x68]
call fcn.004442e0
lea ecx, [ebp - 0x30]
lea edx, [ecx + 2]
nop dword [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4d22e0
sub ecx, edx
lea eax, [ebp - 0x30]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x68]
call fcn.004442e0
lea ecx, [ebp - 0x68]
call fcn.004d4830
push 1
push 0x5563bc
lea ecx, [ebp - 0x68]
call fcn.004442e0
lea ecx, [ebp - 0x68]
call fcn.004d4830
cmp word [str.sgim_usr_v3new.bin], 0
je 0x4d233c
push 0x12
push str.sgim_usr_v3new.bin
lea ecx, [ebp - 0x68]
call fcn.004442e0
lea ecx, [ebp - 0x68]
call fcn.004d4830
push 1
push 0x5563bc
lea ecx, [ebp - 0x68]
call fcn.004442e0
lea ecx, [ebp - 0x68]
call fcn.004d4830
cmp word [ebp - 0x50], 0
je 0x4d2384
lea ecx, [ebp - 0x50]
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4d2360
sub ecx, edx
lea eax, [ebp - 0x50]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x68]
call fcn.004442e0
lea ecx, [ebp - 0x68]
call fcn.004d4830
cmp dword [ebp - 0x54], 8
lea eax, [ebp - 0x68]
mov edi, dword [ebp - 0x9d0]
push dword [ebp - 0x9bd]
cmovae eax, dword [ebp - 0x68]
push eax
lea ecx, [edi + 0xc]
call fcn.004e9130
test al, al
je 0x4d24c5
cmp dword [ebp - 0x54], 8
lea eax, [ebp - 0x68]
cmovae eax, dword [ebp - 0x68]
push eax
call fcn.004d2910
mov dword [ebp - 0x9d8], eax
test eax, eax
je 0x4d2453
lea ecx, [ebp - 0x68]
call fcn.004d0840
call fcn.004df100
push 0x2f0
push str.t_usrDictV3Core::UsrBackup
push str.__S_L:_d__
call fcn.004df180
cmp dword [ebp - 0x54], 8
lea eax, [ebp - 0x68]
cmovae eax, dword [ebp - 0x68]
push eax
push dword [ebp - 0x9d8]
push esi
push str.state:_d__WriteDict_check_dict_false__errcode:_d__path:_s
call fcn.004df180
mov eax, dword [ebp - 0x9bd]
add esp, 0x1c
mov ecx, edi
push eax
lea eax, [ebp - 0x80]
push eax
call fcn.004d2660
test al, al
jne 0x4d2431
call fcn.004df100
push 0x2f5
jmp 0x4d2581
lea edx, [ebp - 0x68]
lea ecx, [ebp - 0x80]
call fcn.004d0500
test al, al
jne 0x4d2601
call fcn.004df100
push 0x2fd
jmp 0x4d25cc
cmp byte [ebp - 0x9b9], 0
je 0x4d2467
lea ecx, [ebp - 0xbc]
call fcn.004d0840
lea edx, [ebp - 0x80]
lea ecx, [ebp - 0x68]
call fcn.004d0500
test al, al
jne 0x4d2601
call fcn.004df100
push 0x30b
push str.t_usrDictV3Core::UsrBackup
push str.__S_L:_d__
call fcn.004df180
cmp dword [ebp - 0x6c], 8
lea ecx, [ebp - 0x80]
lea eax, [ebp - 0x68]
cmovae ecx, dword [ebp - 0x80]
cmp dword [ebp - 0x54], 8
push ecx
cmovae eax, dword [ebp - 0x68]
push eax
push esi
push str.state:_d__CopyToDict_false__frompath:_s__topath:_s
call fcn.004df180
add esp, 0x1c
mov byte [ebp - 0x9b9], 0
jmp 0x4d2608
lea eax, [ebp - 0x9dc]
push eax
call fcn.004b35c1
lea eax, [ebp - 0x9dc]
push eax
lea eax, [ebp - 0xa4]
push eax
call fcn.004b4336
push dword [ebp - 0xa4]
cmp dword [0x57e638], 8
mov ecx, 0x57e624
push dword [ebp - 0xa0]
cmovae ecx, dword [0x57e624]
push dword [ebp - 0x9c]
mov eax, dword [ebp - 0x94]
push dword [ebp - 0x98]
inc eax
push eax
mov eax, dword [ebp - 0x90]
add eax, 0x76c
push eax
push ecx
push 0x5835b8
push str.__s___s___04d__02d__02d__02d:_02d:_02d_
call fcn.004df180
push 0x312
push str.t_usrDictV3Core::UsrBackup
push str.__S_L:_d__
call fcn.004df180
cmp dword [ebp - 0x54], 8
lea eax, [ebp - 0x68]
cmovae eax, dword [ebp - 0x68]
push eax
push esi
push str.state:_d__WriteDict_false__topath:_s
call fcn.004df180
mov eax, dword [ebp - 0x9bd]
add esp, 0x48
mov ecx, edi
push eax
lea eax, [ebp - 0x80]
push eax
call fcn.004d2660
test al, al
jne 0x4d25b3
call fcn.004df100
push 0x317
push str.t_usrDictV3Core::UsrBackup
push str.__S_L:_d__
call fcn.004df180
cmp dword [ebp - 0x6c], 8
lea eax, [ebp - 0x80]
cmovae eax, dword [ebp - 0x80]
push eax
push esi
push str.state:_d__WriteToDict_false__topath:_s
call fcn.004df180
add esp, 0x18
mov byte [ebp - 0x9b9], 0
jmp 0x4d2608
lea edx, [ebp - 0x68]
lea ecx, [ebp - 0x80]
call fcn.004d0500
test al, al
jne 0x4d2601
call fcn.004df100
push 0x31f
push str.t_usrDictV3Core::UsrBackup
push str.__S_L:_d__
call fcn.004df180
cmp dword [ebp - 0x54], 8
lea ecx, [ebp - 0x68]
lea eax, [ebp - 0x80]
cmovae ecx, dword [ebp - 0x68]
cmp dword [ebp - 0x6c], 8
push ecx
cmovae eax, dword [ebp - 0x80]
push eax
push esi
push str.state:_d__CopyToDict_false__frompath:_s__topath:_s
call fcn.004df180
add esp, 0x1c
mov byte [ebp - 0x9b9], 1
lea ecx, [ebp - 0x68]
call fcn.00418a00
lea ecx, [ebp - 0xd4]
call fcn.00418a00
lea ecx, [ebp - 0x80]
call fcn.00418a00
lea ecx, [ebp - 0xbc]
call fcn.00418a00
mov al, byte [ebp - 0x9b9]
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.004a35cb
mov esp, ebp
pop ebp
ret 8