Function at 0x6352d0
Capabilities:
Check for software breakpoints

Disassembly:
push 0xffffffffffffffff
push 0x6d84aa
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x15c
push ebx
push ebp
push esi
mov esi, ecx
push edi
mov ecx, 0x20
xor eax, eax
lea edi, [esp + 0x4c]
rep stosd dword es:[edi], eax
mov ecx, 0x20
lea edi, [esp + 0xec]
rep stosd dword es:[edi], eax
mov eax, dword [esi + 0xc]
xor ebp, ebp
test eax, eax
mov dword [esp + 0x14], esi
mov byte [esp + 0x13], 0
jle 0x63662d
cmp eax, dword [esi + 0x2c]
jg 0x63662d
call fcn.00633960
cmp al, 1
je 0x63662d
cmp byte [esi + 0x28], 1
je 0x63662d
call fcn.00633db0
cmp al, 1
je 0x63662d
mov al, byte [esi + 0x14]
test al, al
je 0x635494
mov eax, esi
xor edi, edi
mov ecx, dword [eax + 0x20]
test ecx, ecx
jbe 0x635494
mov ecx, esi
lea esi, [ecx + 0x18]
cmp byte [esp + 0x13], 2
jne 0x63537c
mov ebp, edi
mov byte [esp + 0x13], 3
mov ecx, dword [esi + 8]
cmp ecx, edi
jb 0x6353b1
mov eax, dword [esi + 4]
test eax, eax
je 0x6353b1
mov al, byte [eax - 1]
test al, al
je 0x63539f
cmp al, 0xff
je 0x63539f
push 0
push ecx
mov ecx, esi
call fcn.00414230
mov eax, dword [esi + 4]
test eax, eax
je 0x6353aa
mov byte [eax - 1], 0xff
mov eax, dword [esi + 4]
add eax, edi
jmp 0x6353b6
mov eax, 0x6dd1f8
cmp byte [eax], 0x5f
jne 0x6353bf
inc byte [esp + 0x13]
mov ecx, dword [esi + 8]
mov ebx, edi
cmp ecx, edi
jb 0x6353f6
mov eax, dword [esi + 4]
test eax, eax
je 0x6353f6
mov al, byte [eax - 1]
test al, al
je 0x6353e4
cmp al, 0xff
je 0x6353e4
push 0
push ecx
mov ecx, esi
call fcn.00414230
mov eax, dword [esi + 4]
test eax, eax
je 0x6353ef
mov byte [eax - 1], 0xff
mov eax, dword [esi + 4]
add eax, edi
jmp 0x6353fb
mov eax, 0x6dd1f8
cmp byte [eax], 0x2c
je 0x635410
mov edx, dword [esp + 0x14]
inc edi
cmp edi, dword [edx + 0x20]
jb 0x63536e
jmp 0x635413
lea ebx, [edi - 1]
test bp, bp
jle 0x635494
test bx, bx
jle 0x635494
cmp bx, bp
jle 0x635494
movsx eax, bp
movsx ebx, bx
xor ebp, ebp
cmp eax, ebx
jg 0x63548c
lea edx, [esp + 0xec]
mov ebp, ebx
sub edx, eax
sub ebp, eax
mov edi, eax
mov dword [esp + 0x18], edx
inc ebp
mov ecx, dword [esi + 8]
cmp ecx, edi
jb 0x63547d
mov eax, dword [esi + 4]
test eax, eax
je 0x63547d
mov al, byte [eax - 1]
test al, al
je 0x635469
cmp al, 0xff
je 0x635469
push 0
push ecx
mov ecx, esi
call fcn.00414230
mov edx, dword [esp + 0x18]
mov eax, dword [esi + 4]
test eax, eax
je 0x635474
mov byte [eax - 1], 0xff
mov ecx, dword [esi + 4]
mov eax, edi
add eax, ecx
jmp 0x635482
mov eax, 0x6dd1f8
mov al, byte [eax]
mov byte [edx + edi], al
inc edi
cmp edi, ebx
jle 0x635442
mov byte [esp + ebp + 0xec], 0
mov eax, dword [esp + 0x14]
xor ebp, ebp
or ebx, 0xffffffff
cmp dword [eax], ebp
jne 0x636241
cmp byte [eax + 4], 1
jne 0x635945
mov ecx, 0x20
xor eax, eax
lea edi, [esp + 0x4c]
rep stosd dword es:[edi], eax
lea ecx, [esp + 0x1c]
push ecx
call fcn.00633c70
add esp, 4
mov esi, eax
mov eax, dword [esi + 4]
mov dword [esp + 0x174], ebp
cmp eax, ebp
je 0x635500
mov al, byte [eax - 1]
test al, al
je 0x6354f0
cmp al, 0xff
je 0x6354f0
mov edx, dword [esi + 8]
push ebp
push edx
mov ecx, esi
call fcn.00414230
mov eax, dword [esi + 4]
cmp eax, ebp
je 0x6354fb
mov byte [eax - 1], 0xff
mov esi, dword [esi + 4]
jmp 0x635505
mov esi, 0x6dd1f8
movsx eax, byte [esi]
push eax
lea ecx, [esp + 0x50]
push 0x72290c
push ecx
call fcn.006a6fa5
mov eax, dword [esp + 0x2c]
add esp, 0xc
cmp eax, ebp
mov dword [esp + 0x174], ebx
je 0x635547
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x63553e
cmp al, 0xff
je 0x63553e
dec al
mov byte [ecx], al
jmp 0x635547
push ecx
call fcn.006a64d0
add esp, 4
xor edi, edi
xor ebp, ebp
lea edx, [esp + 0x3c]
push edx
call fcn.00631310
mov edx, dword [eax + 8]
mov eax, dword [esp + 0x44]
add esp, 4
cmp ebp, edx
setb bl
cmp eax, edi
je 0x635585
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x63557c
cmp al, 0xff
je 0x63557c
dec al
mov byte [ecx], al
jmp 0x635585
push ecx
call fcn.006a64d0
add esp, 4
test bl, bl
mov dword [esp + 0x40], edi
mov dword [esp + 0x44], edi
mov dword [esp + 0x48], edi
je 0x635668
lea eax, [esp + 0x1c]
push eax
call fcn.00631310
add esp, 4
mov esi, eax
mov ecx, dword [esi + 8]
mov dword [esp + 0x174], 1
cmp ecx, ebp
jb 0x6355e7
mov eax, dword [esi + 4]
cmp eax, edi
je 0x6355e7
mov al, byte [eax - 1]
test al, al
je 0x6355d5
cmp al, 0xff
je 0x6355d5
push edi
push ecx
mov ecx, esi
call fcn.00414230
mov eax, dword [esi + 4]
cmp eax, edi
je 0x6355e0
mov byte [eax - 1], 0xff
mov esi, dword [esi + 4]
add esi, ebp
jmp 0x6355ec
mov esi, 0x6dd1f8
movsx ecx, byte [esi]
push ecx
lea edi, [esp + 0x50]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push 0x713828
lea edx, [esp + ecx + 0x54]
push edx
call fcn.006a6fa5
mov eax, dword [esp + 0x2c]
xor esi, esi
add esp, 0xc
cmp eax, esi
mov dword [esp + 0x174], 0xffffffff
je 0x635654
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x63564b
cmp al, 0xff
je 0x63564b
dec al
inc ebp
mov byte [ecx], al
mov dword [esp + 0x20], esi
mov dword [esp + 0x24], esi
mov dword [esp + 0x28], esi
xor edi, edi
jmp 0x63554b
push ecx
call fcn.006a64d0
add esp, 4
inc ebp
mov dword [esp + 0x20], esi
mov dword [esp + 0x24], esi
mov dword [esp + 0x28], esi
xor edi, edi
jmp 0x63554b
call fcn.00631470
or ebp, 0xffffffff
lea edi, [esp + 0x4c]
mov ecx, ebp
xor eax, eax
sub esp, 8
repne scasb al, byte es:[edi]
fstp qword [esp]
not ecx
dec ecx
push str._V_.2f_
lea eax, [esp + ecx + 0x58]
push eax
call fcn.006a6fa5
lea ecx, [esp + 0x2c]
push ecx
call fcn.00633740
add esp, 0x14
mov esi, eax
mov eax, dword [esi + 4]
mov dword [esp + 0x174], 2
test eax, eax
je 0x6356db
mov al, byte [eax - 1]
test al, al
je 0x6356cb
cmp al, 0xff
je 0x6356cb
mov edx, dword [esi + 8]
push 0
push edx
mov ecx, esi
call fcn.00414230
mov eax, dword [esi + 4]
test eax, eax
je 0x6356d6
mov byte [eax - 1], 0xff
mov esi, dword [esi + 4]
jmp 0x6356e0
mov esi, 0x6dd1f8
movsx eax, byte [esi]
push eax
lea edi, [esp + 0x50]
mov ecx, ebp
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push 0x713828
lea ecx, [esp + ecx + 0x54]
push ecx
call fcn.006a6fa5
mov eax, dword [esp + 0x2c]
add esp, 0xc
test eax, eax
mov dword [esp + 0x174], ebp
je 0x63572f
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x635726
cmp al, 0xff
je 0x635726
dec al
mov byte [ecx], al
jmp 0x63572f
push ecx
call fcn.006a64d0
add esp, 4
lea edx, [esp + 0x1c]
push edx
call fcn.00633740
add esp, 4
mov esi, eax
mov ecx, dword [esi + 8]
mov dword [esp + 0x174], 3
cmp ecx, 1
jb 0x63577e
mov eax, dword [esi + 4]
test eax, eax
je 0x63577e
mov al, byte [eax - 1]
test al, al
je 0x63576d
cmp al, 0xff
je 0x63576d
push 0
push ecx
mov ecx, esi
call fcn.00414230
mov eax, dword [esi + 4]
test eax, eax
je 0x635778
mov byte [eax - 1], 0xff
mov esi, dword [esi + 4]
inc esi
jmp 0x635783
mov esi, 0x6dd1f8
movsx eax, byte [esi]
push eax
lea edi, [esp + 0x50]
mov ecx, ebp
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push 0x72290c
lea ecx, [esp + ecx + 0x54]
push ecx
call fcn.006a6fa5
mov eax, dword [esp + 0x2c]
add esp, 0xc
test eax, eax
mov dword [esp + 0x174], ebp
je 0x6357d2
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x6357c9
cmp al, 0xff
je 0x6357c9
dec al
mov byte [ecx], al
jmp 0x6357d2
push ecx
call fcn.006a64d0
add esp, 4
mov ebx, dword [esp + 0x14]
mov al, byte [ebx + 0x14]
test al, al
je 0x63581c
lea edi, [esp + 0xec]
mov ecx, ebp
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x6357fe
lea edx, [esp + 0xec]
push edx
push 0x722900
jmp 0x635825
lea edi, [esp + 0x4c]
mov ecx, ebp
xor eax, eax
push str.0000
repne scasb al, byte es:[edi]
not ecx
dec ecx
push 0x722900
lea ecx, [esp + ecx + 0x54]
push ecx
jmp 0x635837
mov edx, dword [ebx + 0x10]
push edx
push str._08X_
lea edi, [esp + 0x54]
mov ecx, ebp
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea eax, [esp + ecx + 0x54]
push eax
call fcn.006a6fa5
add esp, 0xc
lea ecx, [esp + 0x2c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
mov eax, dword [esp + 0x2c]
cmp ax, 0x7d0
jbe 0x635860
and eax, 0xffff
sub eax, 0x7d0
jmp 0x635865
and eax, 0xffff
mov edx, dword [esp + 0x38]
mov ecx, dword [esp + 0x36]
and edx, 0xffff
and ecx, 0xffff
push edx
mov edx, dword [esp + 0x38]
and edx, 0xffff
push ecx
mov ecx, dword [esp + 0x3a]
push edx
mov edx, dword [esp + 0x3a]
and ecx, 0xffff
and edx, 0xffff
push ecx
push edx
push eax
lea edi, [esp + 0x64]
mov ecx, ebp
xor eax, eax
push str._02d_02d_02d__02d_02d_02d_BUG
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea eax, [esp + ecx + 0x68]
push eax
call fcn.006a6fa5
mov edi, str..txt
mov ecx, ebp
xor eax, eax
lea edx, [esp + 0x6c]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push 0x28
mov esi, edi
mov edi, edx
mov edx, ecx
mov ecx, ebp
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.006a6832
add esp, 0x24
mov dword [esp + 0x18], eax
test eax, eax
mov dword [esp + 0x174], 4
je 0x63590b
mov ecx, eax
call fcn.00631600
jmp 0x63590d
xor eax, eax
lea ecx, [esp + 0x4c]
mov dword [esp + 0x174], ebp
push ecx
mov ecx, eax
mov dword [ebx], eax
call fcn.00631a40
test eax, eax
jne 0x636241
mov esi, dword [esp + 0x14]
mov ecx, dword [esi]
test ecx, ecx
je 0x63593a
mov edx, dword [ecx]
push 1
call dword [edx]
mov dword [esi], 0
jmp 0x63662d
mov cl, byte [eax + 5]
cmp cl, 1
mov ecx, 0x20
jne 0x635db4
xor eax, eax
lea edi, [esp + 0x4c]
rep stosd dword es:[edi], eax
lea eax, [esp + 0x1c]
push eax
call fcn.00633c70
add esp, 4
mov esi, eax
mov eax, dword [esi + 4]
mov dword [esp + 0x174], 5
cmp eax, ebp
je 0x6359a6
mov al, byte [eax - 1]
test al, al
je 0x635996
cmp al, 0xff
je 0x635996
mov ecx, dword [esi + 8]
push ebp
push ecx
mov ecx, esi
call fcn.00414230
mov eax, dword [esi + 4]
cmp eax, ebp
je 0x6359a1
mov byte [eax - 1], 0xff
mov esi, dword [esi + 4]
jmp 0x6359ab
mov esi, 0x6dd1f8
movsx edx, byte [esi]
push edx
lea eax, [esp + 0x50]
push 0x72290c
push eax
call fcn.006a6fa5
mov eax, dword [esp + 0x2c]
add esp, 0xc
cmp eax, ebp
mov dword [esp + 0x174], ebx
je 0x6359ed
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x6359e4
cmp al, 0xff
je 0x6359e4
dec al
mov byte [ecx], al
jmp 0x6359ed
push ecx
call fcn.006a64d0
add esp, 4
lea ecx, [esp + 0x1c]
push ecx
call fcn.00631310
mov edx, dword [eax + 8]
mov eax, dword [esp + 0x24]
add esp, 4
cmp ebp, edx
setb bl
xor edi, edi
cmp eax, edi
je 0x635a29
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x635a20
cmp al, 0xff
je 0x635a20
dec al
mov byte [ecx], al
jmp 0x635a29
push ecx
call fcn.006a64d0
add esp, 4
test bl, bl
mov dword [esp + 0x20], edi
mov dword [esp + 0x24], edi
mov dword [esp + 0x28], edi
je 0x635b0a
lea edx, [esp + 0x3c]
push edx
call fcn.00631310
add esp, 4
mov esi, eax
mov ecx, dword [esi + 8]
mov dword [esp + 0x174], 6
cmp ecx, ebp
jb 0x635a8d
mov eax, dword [esi + 4]
cmp eax, edi
je 0x635a8d
mov al, byte [eax - 1]
test al, al
je 0x635a79
cmp al, 0xff
je 0x635a79
push edi
push ecx
mov ecx, esi
call fcn.00414230
mov eax, dword [esi + 4]
cmp eax, edi
je 0x635a84
mov byte [eax - 1], 0xff
mov ecx, dword [esi + 4]
mov eax, ebp
add eax, ecx
jmp 0x635a92
mov eax, 0x6dd1f8
movsx eax, byte [eax]
push eax
lea edi, [esp + 0x50]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push 0x713828
lea ecx, [esp + ecx + 0x54]
push ecx
call fcn.006a6fa5
mov eax, dword [esp + 0x4c]
xor esi, esi
add esp, 0xc
cmp eax, esi
mov dword [esp + 0x174], 0xffffffff
je 0x635af8
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x635aef
cmp al, 0xff
je 0x635aef
dec al
inc ebp
mov byte [ecx], al
mov dword [esp + 0x40], esi
mov dword [esp + 0x44], esi
mov dword [esp + 0x48], esi
jmp 0x6359ed
push ecx
call fcn.006a64d0
add esp, 4
mov dword [esp + 0x40], esi
mov dword [esp + 0x44], esi
mov dword [esp + 0x48], esi
inc ebp
jmp 0x6359ed
call fcn.00631470
or ebp, 0xffffffff
lea edi, [esp + 0x4c]
mov ecx, ebp
xor eax, eax
sub esp, 8
repne scasb al, byte es:[edi]
fstp qword [esp]
not ecx
dec ecx
push str._V_.2f_
lea edx, [esp + ecx + 0x58]
push edx
call fcn.006a6fa5
lea eax, [esp + 0x2c]
push eax
call fcn.00633740
add esp, 0x14
mov esi, eax
mov eax, dword [esi + 4]
mov dword [esp + 0x174], 7
test eax, eax
je 0x635b7d
mov al, byte [eax - 1]
test al, al
je 0x635b6d
cmp al, 0xff
je 0x635b6d
mov ecx, dword [esi + 8]
push 0
push ecx
mov ecx, esi
call fcn.00414230
mov eax, dword [esi + 4]
test eax, eax
je 0x635b78
mov byte [eax - 1], 0xff
mov esi, dword [esi + 4]
jmp 0x635b82
mov esi, 0x6dd1f8
lea edi, [esp + 0x4c]
mov ecx, ebp
xor eax, eax
repne scasb al, byte es:[edi]
movsx edx, byte [esi]
not ecx
dec ecx
push edx
push 0x713828
lea eax, [esp + ecx + 0x54]
push eax
call fcn.006a6fa5
mov eax, dword [esp + 0x2c]
add esp, 0xc
test eax, eax
mov dword [esp + 0x174], ebp
je 0x635bd1
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x635bc8
cmp al, 0xff
je 0x635bc8
dec al
mov byte [ecx], al
jmp 0x635bd1
push ecx
call fcn.006a64d0
add esp, 4
lea ecx, [esp + 0x1c]
push ecx
call fcn.00633740
add esp, 4
mov esi, eax
mov ecx, dword [esi + 8]
mov dword [esp + 0x174], 8
cmp ecx, 1
jb 0x635c20
mov eax, dword [esi + 4]
test eax, eax
je 0x635c20
mov al, byte [eax - 1]
test al, al
je 0x635c0f
cmp al, 0xff
je 0x635c0f
push 0
push ecx
mov ecx, esi
call fcn.00414230
mov eax, dword [esi + 4]
test eax, eax
je 0x635c1a
mov byte [eax - 1], 0xff
mov esi, dword [esi + 4]
inc esi
jmp 0x635c25
mov esi, 0x6dd1f8
lea edi, [esp + 0x4c]
mov ecx, ebp
xor eax, eax
repne scasb al, byte es:[edi]
movsx edx, byte [esi]
not ecx
dec ecx
push edx
push 0x72290c
lea eax, [esp + ecx + 0x54]
push eax
call fcn.006a6fa5
mov eax, dword [esp + 0x2c]
add esp, 0xc
test eax, eax
mov dword [esp + 0x174], ebp
je 0x635c74
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x635c6b
cmp al, 0xff
je 0x635c6b
dec al
mov byte [ecx], al
jmp 0x635c74
push ecx
call fcn.006a64d0
add esp, 4
mov ebx, dword [esp + 0x14]
mov al, byte [ebx + 0x14]
test al, al
je 0x635cbe
lea edi, [esp + 0xec]
mov ecx, ebp
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x635ca0
lea ecx, [esp + 0xec]
push ecx
push 0x722900
jmp 0x635cc7
lea edi, [esp + 0x4c]
mov ecx, ebp
xor eax, eax
push str.0000
repne scasb al, byte es:[edi]
not ecx
dec ecx
push 0x722900
lea eax, [esp + ecx + 0x54]
push eax
jmp 0x635cd9
mov ecx, dword [ebx + 0x10]
push ecx
push str._08X_
lea edi, [esp + 0x54]
mov ecx, ebp
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea edx, [esp + ecx + 0x54]
push edx
call fcn.006a6fa5
add esp, 0xc
lea eax, [esp + 0x2c]
push eax
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
mov eax, dword [esp + 0x2c]
cmp ax, 0x7d0
jbe 0x635d02
and eax, 0xffff
sub eax, 0x7d0
jmp 0x635d07
and eax, 0xffff
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x36]
and ecx, 0xffff
and edx, 0xffff
push ecx
mov ecx, dword [esp + 0x38]
and ecx, 0xffff
push edx
mov edx, dword [esp + 0x3a]
push ecx
mov ecx, dword [esp + 0x3a]
and edx, 0xffff
and ecx, 0xffff
push edx
push ecx
push eax
lea edi, [esp + 0x64]
mov ecx, ebp
xor eax, eax
push str._02d_02d_02d__02d_02d_02d
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea edx, [esp + ecx + 0x68]
push edx
call fcn.006a6fa5
mov edi, str..txt
mov ecx, ebp
xor eax, eax
lea edx, [esp + 0x6c]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push 0x28
mov esi, edi
mov edi, edx
mov edx, ecx
mov ecx, ebp
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.006a6832
add esp, 0x24
mov dword [esp + 0x18], eax
test eax, eax
mov dword [esp + 0x174], 9
je 0x63620f
mov ecx, eax
call fcn.00631600
jmp 0x636211
xor eax, eax
lea edi, [esp + 0x4c]
rep stosd dword es:[edi], eax
lea eax, [esp + 0x1c]
push eax
call fcn.00633c70
add esp, 4
mov esi, eax
mov eax, dword [esi + 4]
mov dword [esp + 0x174], 0xa
cmp eax, ebp
je 0x635e04
mov al, byte [eax - 1]
test al, al
je 0x635df4
cmp al, 0xff
je 0x635df4
mov ecx, dword [esi + 8]
push ebp
push ecx
mov ecx, esi
call fcn.00414230
mov eax, dword [esi + 4]
cmp eax, ebp
je 0x635dff
mov byte [eax - 1], 0xff
mov esi, dword [esi + 4]
jmp 0x635e09
mov esi, 0x6dd1f8
movsx edx, byte [esi]
push edx
lea eax, [esp + 0x50]
push 0x72290c
push eax
call fcn.006a6fa5
mov eax, dword [esp + 0x2c]
add esp, 0xc
cmp eax, ebp
mov dword [esp + 0x174], ebx
je 0x635e4b
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x635e42
cmp al, 0xff
je 0x635e42
dec al
mov byte [ecx], al
jmp 0x635e4b
push ecx
call fcn.006a64d0
add esp, 4
xor edi, edi
xor ebp, ebp
lea ecx, [esp + 0x1c]
push ecx
call fcn.00631310
mov edx, dword [eax + 8]
mov eax, dword [esp + 0x24]
add esp, 4
cmp ebp, edx
setb bl
cmp eax, edi
je 0x635e89
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x635e80
cmp al, 0xff
je 0x635e80
dec al
mov byte [ecx], al
jmp 0x635e89
push ecx
call fcn.006a64d0
add esp, 4
test bl, bl
mov dword [esp + 0x20], edi
mov dword [esp + 0x24], edi
mov dword [esp + 0x28], edi
je 0x635f6c
lea edx, [esp + 0x3c]
push edx
call fcn.00631310
add esp, 4
mov esi, eax
mov ecx, dword [esi + 8]
mov dword [esp + 0x174], 0xb
cmp ecx, ebp
jb 0x635eeb
mov eax, dword [esi + 4]
cmp eax, edi
je 0x635eeb
mov al, byte [eax - 1]
test al, al
je 0x635ed9
cmp al, 0xff
je 0x635ed9
push edi
push ecx
mov ecx, esi
call fcn.00414230
mov eax, dword [esi + 4]
cmp eax, edi
je 0x635ee4
mov byte [eax - 1], 0xff
mov esi, dword [esi + 4]
add esi, ebp
jmp 0x635ef0
mov esi, 0x6dd1f8
movsx eax, byte [esi]
push eax
lea edi, [esp + 0x50]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push 0x713828
lea ecx, [esp + ecx + 0x54]
push ecx
call fcn.006a6fa5
mov eax, dword [esp + 0x4c]
xor esi, esi
add esp, 0xc
cmp eax, esi
mov dword [esp + 0x174], 0xffffffff
je 0x635f58
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x635f4f
cmp al, 0xff
je 0x635f4f
dec al
inc ebp
mov byte [ecx], al
mov dword [esp + 0x40], esi
mov dword [esp + 0x44], esi
mov dword [esp + 0x48], esi
xor edi, edi
jmp 0x635e4f
push ecx
call fcn.006a64d0
add esp, 4
inc ebp
mov dword [esp + 0x40], esi
mov dword [esp + 0x44], esi
mov dword [esp + 0x48], esi
xor edi, edi
jmp 0x635e4f
call fcn.00631470
or ebp, 0xffffffff
lea edi, [esp + 0x4c]
mov ecx, ebp
xor eax, eax
sub esp, 8
repne scasb al, byte es:[edi]
fstp qword [esp]
not ecx
dec ecx
push str._V_.2f_
lea edx, [esp + ecx + 0x58]
push edx
call fcn.006a6fa5
lea eax, [esp + 0x2c]
push eax
call fcn.00633740
add esp, 0x14
mov esi, eax
mov eax, dword [esi + 4]
mov dword [esp + 0x174], 0xc
test eax, eax
je 0x635fdf
mov al, byte [eax - 1]
test al, al
je 0x635fcf
cmp al, 0xff
je 0x635fcf
mov ecx, dword [esi + 8]
push 0
push ecx
mov ecx, esi
call fcn.00414230
mov eax, dword [esi + 4]
test eax, eax
je 0x635fda
mov byte [eax - 1], 0xff
mov esi, dword [esi + 4]
jmp 0x635fe4
mov esi, 0x6dd1f8
lea edi, [esp + 0x4c]
mov ecx, ebp
xor eax, eax
repne scasb al, byte es:[edi]
movsx edx, byte [esi]
not ecx
dec ecx
push edx
push 0x713828
lea eax, [esp + ecx + 0x54]
push eax
call fcn.006a6fa5
mov eax, dword [esp + 0x2c]
add esp, 0xc
test eax, eax
mov dword [esp + 0x174], ebp
je 0x636033
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x63602a
cmp al, 0xff
je 0x63602a
dec al
mov byte [ecx], al
jmp 0x636033
push ecx
call fcn.006a64d0
add esp, 4
lea ecx, [esp + 0x1c]
push ecx
call fcn.00633740
add esp, 4
mov esi, eax
mov ecx, dword [esi + 8]
mov dword [esp + 0x174], 0xd
cmp ecx, 1
jb 0x636082
mov eax, dword [esi + 4]
test eax, eax
je 0x636082
mov al, byte [eax - 1]
test al, al
je 0x636071
cmp al, 0xff
je 0x636071
push 0
push ecx
mov ecx, esi
call fcn.00414230
mov eax, dword [esi + 4]
test eax, eax
je 0x63607c
mov byte [eax - 1], 0xff
mov esi, dword [esi + 4]
inc esi
jmp 0x636087
mov esi, 0x6dd1f8
lea edi, [esp + 0x4c]
mov ecx, ebp
xor eax, eax
repne scasb al, byte es:[edi]
movsx edx, byte [esi]
not ecx
dec ecx
push edx
push 0x72290c
lea eax, [esp + ecx + 0x54]
push eax
call fcn.006a6fa5
mov eax, dword [esp + 0x2c]
add esp, 0xc
test eax, eax
mov dword [esp + 0x174], ebp
je 0x6360d6
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x6360cd
cmp al, 0xff
je 0x6360cd
dec al
mov byte [ecx], al
jmp 0x6360d6
push ecx
call fcn.006a64d0
add esp, 4
mov ebx, dword [esp + 0x14]
mov al, byte [ebx + 0x14]
test al, al
je 0x636120
lea edi, [esp + 0xec]
mov ecx, ebp
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x636102
lea ecx, [esp + 0xec]
push ecx
push 0x722900
jmp 0x636129
lea edi, [esp + 0x4c]
mov ecx, ebp
xor eax, eax
push str.0000
repne scasb al, byte es:[edi]
not ecx
dec ecx
push 0x722900
lea eax, [esp + ecx + 0x54]
push eax
jmp 0x63613b
mov ecx, dword [ebx + 0x10]
push ecx
push str._08X_
lea edi, [esp + 0x54]
mov ecx, ebp
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea edx, [esp + ecx + 0x54]
push edx
call fcn.006a6fa5
add esp, 0xc
lea eax, [esp + 0x2c]
push eax
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
mov eax, dword [esp + 0x2c]
cmp ax, 0x7d0
jbe 0x636164
and eax, 0xffff
sub eax, 0x7d0
jmp 0x636169
and eax, 0xffff
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x36]
and ecx, 0xffff
and edx, 0xffff
push ecx
mov ecx, dword [esp + 0x38]
and ecx, 0xffff
push edx
mov edx, dword [esp + 0x3a]
push ecx
mov ecx, dword [esp + 0x3a]
and edx, 0xffff
and ecx, 0xffff
push edx
push ecx
push eax
lea edi, [esp + 0x64]
mov ecx, ebp
xor eax, eax
push str._02d_02d_02d__02d_02d_02d_OK
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea edx, [esp + ecx + 0x68]
push edx
call fcn.006a6fa5
mov edi, str..txt
mov ecx, ebp
xor eax, eax
lea edx, [esp + 0x6c]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push 0x28
mov esi, edi
mov edi, edx
mov edx, ecx
mov ecx, ebp
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.006a6832
add esp, 0x24
mov dword [esp + 0x18], eax
test eax, eax
mov dword [esp + 0x174], 0xe
je 0x63620f
mov ecx, eax
call fcn.00631600
jmp 0x636211
xor eax, eax
lea ecx, [esp + 0x4c]
mov dword [esp + 0x174], ebp
push ecx
mov ecx, eax
mov dword [ebx], eax
call fcn.00631a40
test eax, eax
jne 0x636241
mov ecx, dword [ebx]
test ecx, ecx
je 0x636236
mov edx, dword [ecx]
push 1
call dword [edx]
mov dword [ebx], 0
jmp 0x63662d
lea eax, [esp + 0x3c]
push eax
call fcn.00633c70
push eax
lea ecx, [esp + 0x24]
push str.SerialNumber:
push ecx
mov dword [esp + 0x184], 0xf
call fcn.00452d00
add esp, 0x10
mov edi, dword [esp + 0x14]
xor ebp, ebp
push ebp
push eax
mov ecx, dword [edi]
mov byte [esp + 0x17c], 0x10
call fcn.006322c0
mov eax, dword [esp + 0x20]
cmp eax, ebp
je 0x6362a5
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x63629c
cmp al, 0xff
je 0x63629c
dec al
mov byte [ecx], al
jmp 0x6362a5
push ecx
call fcn.006a64d0
add esp, 4
mov eax, dword [esp + 0x40]
or esi, 0xffffffff
cmp eax, ebp
mov dword [esp + 0x20], ebp
mov dword [esp + 0x24], ebp
mov dword [esp + 0x28], ebp
mov dword [esp + 0x174], esi
je 0x6362e0
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x6362d7
cmp al, 0xff
je 0x6362d7
dec al
mov byte [ecx], al
jmp 0x6362e0
push ecx
call fcn.006a64d0
add esp, 4
lea edx, [esp + 0xcc]
push edx
call fcn.00633ea0
push eax
lea eax, [esp + 0xe4]
push str.DisplayVersion:
push eax
mov dword [esp + 0x184], 0x11
call fcn.00452d00
add esp, 0x10
mov ecx, dword [edi]
push ebp
push eax
mov byte [esp + 0x17c], 0x12
call fcn.006322c0
mov eax, dword [esp + 0xe0]
cmp eax, ebp
je 0x636347
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x63633e
cmp al, 0xff
je 0x63633e
dec al
mov byte [ecx], al
jmp 0x636347
push ecx
call fcn.006a64d0
add esp, 4
mov eax, dword [esp + 0xd0]
mov dword [esp + 0xe0], ebp
cmp eax, ebp
mov dword [esp + 0xe4], ebp
mov dword [esp + 0xe8], ebp
mov dword [esp + 0x174], esi
je 0x63638b
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x636382
cmp al, 0xff
je 0x636382
dec al
mov byte [ecx], al
jmp 0x63638b
push ecx
call fcn.006a64d0
add esp, 4
mov dword [esp + 0xd0], ebp
mov dword [esp + 0xd4], ebp
mov dword [esp + 0xd8], ebp
call fcn.00633ff0
cmp eax, 1
push ebp
jne 0x6363b2
push str.NewMcuFlag:TRUE
jmp 0x6363b7
push str.NewMcuFlag:FALSE
mov ecx, dword [edi]
call fcn.006324b0
mov ecx, dword [edi]
push ebp
push str.________________________________________________________________________________________
call fcn.006324b0
mov ecx, dword [edi]
push 1
push 0x713904
call fcn.006324b0
mov ecx, dword [edi]
call fcn.006322e0
mov eax, dword [edi + 0xc]
xor esi, esi
cmp eax, ebp
jle 0x6365fa
mov ecx, dword [edi + 8]
lea eax, [ecx + esi]
mov cl, byte [ecx + esi]
cmp cl, 0x55
jne 0x6365ee
mov cl, byte [eax + 1]
cmp cl, 0xaa
je 0x63641a
cmp cl, 0xbb
je 0x63641a
cmp cl, 0xcc
je 0x63641a
cmp cl, 0xdd
jne 0x6365ee
xor ebx, ebx
mov dword [esp + 0x18], esi
mov bl, byte [eax + 2]
cmp ebx, ebp
jle 0x6365ee
cmp ebx, 0xff
jg 0x6365ee
lea edx, [ebx + ebx*2]
xor edi, edi
push edx
call fcn.006a6832
mov ebp, eax
mov eax, dword [esp + 0x18]
add esp, 4
mov ecx, dword [eax + 8]
lea eax, [ecx + esi]
mov cl, byte [ecx + esi]
cmp cl, 0x55
jne 0x6365cc
cmp byte [eax + 1], 0xaa
jne 0x6364c5
mov edx, dword [esp + 0x14]
mov al, byte [edx + 0x30]
test al, al
jne 0x636475
push str._nReq:
jmp 0x63647a
push str.Req:
push 0x713868
push ebp
call fcn.006a6fa5
mov edi, eax
mov eax, dword [esp + 0x24]
add esi, 3
add ebx, eax
add esp, 0xc
cmp esi, ebx
jge 0x6365cc
mov ecx, dword [esp + 0x14]
xor eax, eax
mov edx, dword [ecx + 8]
lea ecx, [edi + ebp]
mov al, byte [edx + esi]
push eax
push str.__02X
push ecx
call fcn.006a6fa5
add esp, 0xc
add edi, eax
inc esi
cmp esi, ebx
jl 0x63649b
jmp 0x6365cc
cmp cl, 0x55
jne 0x6365cc
cmp byte [eax + 1], 0xbb
jne 0x636524
push str.Ans:
push 0x713868
push ebp
call fcn.006a6fa5
mov edx, dword [esp + 0x24]
add esi, 3
add ebx, edx
add esp, 0xc
cmp esi, ebx
mov edi, eax
jge 0x6365cc
mov eax, dword [esp + 0x14]
xor edx, edx
mov ecx, dword [eax + 8]
lea eax, [edi + ebp]
mov dl, byte [ecx + esi]
push edx
push str.__02X
push eax
call fcn.006a6fa5
add esp, 0xc
add edi, eax
inc esi
cmp esi, ebx
jl 0x6364fa
jmp 0x6365cc
cmp cl, 0x55
jne 0x6365cc
cmp byte [eax + 1], 0xcc
jne 0x63657b
push str._nSend_Cmd_Time_:
push 0x713868
push ebp
call fcn.006a6fa5
mov ecx, dword [esp + 0x24]
add esi, 3
add ebx, ecx
add esp, 0xc
cmp esi, ebx
mov edi, eax
jge 0x6365cc
mov edx, dword [esp + 0x14]
mov eax, dword [edx + 8]
lea edx, [edi + ebp]
movsx ecx, byte [eax + esi]
push ecx
push 0x713828
push edx
call fcn.006a6fa5
add esp, 0xc
add edi, eax
inc esi
cmp esi, ebx
jl 0x636555
jmp 0x6365cc
cmp cl, 0x55
jne 0x6365cc
cmp byte [eax + 1], 0xdd
jne 0x6365cc
push str.Rece_Cmd_Time_:
push 0x713868
push ebp
call fcn.006a6fa5
mov edi, eax
mov eax, dword [esp + 0x24]
add esi, 3
add ebx, eax
add esp, 0xc
cmp esi, ebx
jge 0x6365cc
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 8]
lea ecx, [edi + ebp]
movsx eax, byte [edx + esi]
push eax
push 0x713828
push ecx
call fcn.006a6fa5
add esp, 0xc
add edi, eax
inc esi
cmp esi, ebx
jl 0x6365a8
mov edx, dword [esp + 0x14]
mov byte [edi + ebp], 0
push 0
push ebp
mov ecx, dword [edx]
dec esi
call fcn.006324b0
push ebp
call fcn.006a64d0
mov edi, dword [esp + 0x18]
add esp, 4
xor ebp, ebp
mov eax, dword [edi + 0xc]
inc esi
cmp esi, eax
jl 0x6363ed
mov ecx, dword [edi]
push 1
push 0x713904
call fcn.006324b0
mov ecx, dword [edi]
mov byte [edi + 4], 0
mov byte [edi + 5], 0
call fcn.006328e0
mov ecx, dword [edi]
cmp ecx, ebp
je 0x636623
mov eax, dword [ecx]
push 1
call dword [eax]
mov ecx, dword [edi + 8]
mov dword [edi], ebp
mov dword [ecx], ebp
mov dword [edi + 0xc], ebp
mov ecx, dword [esp + 0x16c]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x168
ret