Function at 0x433a70
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x43e68e
mov eax, dword fs:[0]
push eax
sub esp, 0x2a4
mov eax, dword [0x44e414]
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, dword [ebp + 0xc]
lea eax, [ebp + 8]
push 0x50e02
push edi
push eax
lea ecx, [ebp - 0x288]
mov dword [ebp - 0x3c], edi
mov dword [ebp - 0x98], 0
call dword [0x43f18c]
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], 0
mov dword [ebp - 0xd8], 0
mov dword [ebp - 0xd4], 0x80000000
mov dword [ebp - 0xd0], 0
mov dword [ebp - 0xcc], 0x80000000
call dword [0x43f1c8]
xor al, al
mov dword [ebp - 0xb0], 0
lea ecx, [ebp - 0x80]
mov byte [ebp - 0x59], al
mov byte [ebp - 0x5a], al
mov byte [ebp - 0x75], al
call dword [0x43f1c8]
cmp dword [ebp + 8], 1
mov byte [ebp - 4], 2
jne 0x433b2d
call fcn.00433740
jmp 0x434ce1
push 0xef
call fcn.0043959a
add esp, 4
mov dword [ebp - 0x58], eax
mov byte [ebp - 4], 3
test eax, eax
je 0x433b4e
mov ecx, eax
call fcn.0040b030
jmp 0x433b50
xor eax, eax
mov esi, 1
mov byte [ebp - 4], 2
mov dword [0x44ee18], eax
mov dword [ebp - 0x34], esi
cmp dword [ebp + 8], esi
jl 0x434ce1
mov edx, dword [edi + 4]
mov ecx, 0x443e8c
mov dword [ebp - 0x44], edx
mov eax, edx
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x2d], dl
mov edx, dword [ebp - 0x44]
jne 0x433ba7
cmp byte [ebp - 0x2d], 0
je 0x433ba3
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x2d], dl
mov edx, dword [ebp - 0x44]
jne 0x433ba7
add eax, 2
add ecx, 2
cmp byte [ebp - 0x2d], 0
jne 0x433b77
xor eax, eax
jmp 0x433bac
sbb eax, eax
or eax, 1
test eax, eax
je 0x433b23
mov ecx, str._encrypt
mov eax, edx
nop dword [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x2d], dl
mov edx, dword [ebp - 0x44]
jne 0x433bf0
cmp byte [ebp - 0x2d], 0
je 0x433bec
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x2d], dl
mov edx, dword [ebp - 0x44]
jne 0x433bf0
add eax, 2
add ecx, 2
cmp byte [ebp - 0x2d], 0
jne 0x433bc0
xor eax, eax
jmp 0x433bf5
sbb eax, eax
or eax, 1
mov edi, dword [0x43f3c4]
test eax, eax
jne 0x434310
lea ecx, [ebp - 0x48]
call dword [0x43f1c8]
lea ecx, [ebp - 0x84]
call dword [0x43f1c8]
lea ecx, [ebp - 0x88]
call dword [0x43f1c8]
lea ecx, [ebp - 0x64]
call dword [0x43f1c8]
lea ecx, [ebp - 0x50]
call dword [0x43f28c]
cmp dword [ebp + 8], 1
xorps xmm0, xmm0
mov byte [ebp - 4], 8
mov dword [ebp - 0xac], 0x8000000
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x14], 0
movq qword [ebp - 0x1c], xmm0
jle 0x433e63
mov edi, dword [ebp + 8]
dec edi
cmp esi, edi
jge 0x433e63
mov eax, dword [ebp - 0x3c]
inc esi
mov dword [ebp - 0x34], esi
mov esi, dword [eax + esi*4]
push esi
call fcn.00432a70
add esp, 4
test al, al
jne 0x433e63
push esi
call fcn.00432dd0
add esp, 4
test al, al
je 0x433f5f
mov esi, dword [ebp - 0x34]
cmp esi, edi
jge 0x433e63
mov edi, dword [ebp - 0x3c]
inc esi
mov dword [ebp - 0x34], esi
mov ecx, str.__fn
mov eax, dword [edi + esi*4 - 4]
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x2d], dl
mov edx, dword [edi + esi*4 - 4]
jne 0x433ce6
cmp byte [ebp - 0x2d], 0
je 0x433ce2
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x2d], dl
mov edx, dword [edi + esi*4 - 4]
jne 0x433ce6
add eax, 2
add ecx, 2
cmp byte [ebp - 0x2d], 0
jne 0x433cb4
xor eax, eax
jmp 0x433ceb
sbb eax, eax
or eax, 1
test eax, eax
jne 0x433cfa
lea ecx, [ebp - 0x84]
jmp 0x433e51
mov ecx, 0x443f54
mov eax, edx
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x2d], dl
mov edx, dword [edi + esi*4 - 4]
jne 0x433d33
cmp byte [ebp - 0x2d], 0
je 0x433d2f
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x2d], dl
mov edx, dword [edi + esi*4 - 4]
jne 0x433d33
add eax, 2
add ecx, 2
cmp byte [ebp - 0x2d], 0
jne 0x433d01
xor eax, eax
jmp 0x433d38
sbb eax, eax
or eax, 1
test eax, eax
jne 0x433d8c
mov edx, dword [edi + esi*4]
test edx, edx
je 0x433d56
mov ecx, edx
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x433d48
sub ecx, esi
mov esi, dword [ebp - 0x34]
jmp 0x433d58
xor ecx, ecx
push edx
push ecx
lea ecx, [ebp - 0x74]
call dword [0x43f1f8]
push 0x10
push 0
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 9
call dword [0x43f270]
lea ecx, [ebp - 0x74]
mov dword [ebp - 0xac], eax
mov byte [ebp - 4], 8
call dword [0x43f338]
jmp 0x433e5a
mov ecx, 0x443fe4
mov eax, edx
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x2d], dl
mov edx, dword [edi + esi*4 - 4]
jne 0x433dc5
cmp byte [ebp - 0x2d], 0
je 0x433dc1
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x2d], dl
mov edx, dword [edi + esi*4 - 4]
jne 0x433dc5
add eax, 2
add ecx, 2
cmp byte [ebp - 0x2d], 0
jne 0x433d93
xor eax, eax
jmp 0x433dca
sbb eax, eax
or eax, 1
test eax, eax
jne 0x433dd9
lea ecx, [ebp - 0x88]
jmp 0x433e51
mov ecx, str.__iv
mov eax, edx
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x2d], dl
mov edx, dword [edi + esi*4 - 4]
jne 0x433e12
cmp byte [ebp - 0x2d], 0
je 0x433e0e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x2d], dl
mov edx, dword [edi + esi*4 - 4]
jne 0x433e12
add eax, 2
add ecx, 2
cmp byte [ebp - 0x2d], 0
jne 0x433de0
xor eax, eax
jmp 0x433e17
sbb eax, eax
or eax, 1
test eax, eax
jne 0x433e20
lea ecx, [ebp - 0x64]
jmp 0x433e51
mov eax, 0x443f60
mov cl, byte [edx]
cmp cl, byte [eax]
jne 0x433e45
test cl, cl
je 0x433e41
mov cl, byte [edx + 1]
cmp cl, byte [eax + 1]
jne 0x433e45
add edx, 2
add eax, 2
test cl, cl
jne 0x433e25
xor eax, eax
jmp 0x433e4a
sbb eax, eax
or eax, 1
test eax, eax
jne 0x433e5a
lea ecx, [ebp - 0x48]
push dword [edi + esi*4]
call dword [0x43f26c]
cmp esi, dword [ebp + 8]
jl 0x433c61
push str._nRead_sourse_file_...__n
call fcn.00439510
push 0
push 0x43f978
call dword [0x43f2a8]
add esp, 0xc
mov dword [ebp - 0x74], eax
lea eax, [ebp - 0x74]
lea ecx, [ebp - 0x48]
push 1
push eax
call dword [0x43f180]
lea ecx, [ebp - 0x74]
mov esi, eax
call dword [0x43f338]
test esi, esi
mov esi, dword [0x43f45c]
jne 0x433eb3
push str._nOut_path_error__press_any_key_to_continue_...__n
call fcn.00439510
add esp, 4
call esi
lea eax, [ebp - 0x88]
push eax
lea ecx, [ebp - 0xb8]
call dword [0x43f218]
push ecx
mov eax, esp
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0xb8]
mov dword [eax], 1
call dword [0x43f210]
mov edi, dword [0x43f204]
test al, al
je 0x433fa9
lea ecx, [ebp - 0x44]
call dword [0x43f28c]
lea eax, [ebp - 0x6c]
mov byte [ebp - 4], 0xb
push eax
lea ecx, [ebp - 0xb8]
call dword [0x43f194]
push eax
lea ecx, [ebp - 0x44]
call dword [0x43f264]
lea ecx, [ebp - 0x6c]
call dword [0x43f294]
lea ecx, [ebp - 0xb8]
call dword [0x43f21c]
mov eax, dword [ebp - 0x44]
lea ecx, [ebp - 0x44]
cmp dword [eax + 4], 0x10
jne 0x433f80
call dword [0x43f290]
lea ecx, [ebp - 0x44]
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x2c], xmm0
call edi
lea ecx, [ebp - 0x44]
call dword [0x43f208]
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0xa
call dword [0x43f294]
jmp 0x433fb8
mov eax, dword [ebp + 8]
dec eax
cmp dword [ebp - 0x34], eax
jge 0x433f76
push esi
push str._nbad_parameter___s___n
call fcn.00439510
add esp, 8
mov edi, 1
jmp 0x43424e
call edi
lea ecx, [ebp - 0x44]
call dword [0x43f208]
push str._nKey_size_must_be_16_bytes__press_any_key_to_continue_...__n
call fcn.00439510
add esp, 4
call esi
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0xa
call dword [0x43f294]
jmp 0x433fb8
push str._nKey_path_error__press_any_key_to_continue_...__n
call fcn.00439510
add esp, 4
call esi
lea eax, [ebp - 0x64]
push eax
lea ecx, [ebp - 0xa0]
call dword [0x43f218]
push ecx
mov eax, esp
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0xa0]
mov dword [eax], 1
call dword [0x43f210]
test al, al
je 0x43408c
lea ecx, [ebp - 0x44]
call dword [0x43f28c]
lea eax, [ebp - 0x6c]
mov byte [ebp - 4], 0xd
push eax
lea ecx, [ebp - 0xa0]
call dword [0x43f194]
push eax
lea ecx, [ebp - 0x44]
call dword [0x43f264]
lea ecx, [ebp - 0x6c]
call dword [0x43f294]
lea ecx, [ebp - 0xa0]
call dword [0x43f21c]
mov eax, dword [ebp - 0x44]
lea ecx, [ebp - 0x44]
cmp dword [eax + 4], 0xc
jne 0x434063
call dword [0x43f290]
lea ecx, [ebp - 0x44]
movq xmm0, qword [eax]
movq qword [ebp - 0x1c], xmm0
mov eax, dword [eax + 8]
mov dword [ebp - 0x14], eax
call edi
lea ecx, [ebp - 0x44]
call dword [0x43f208]
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0xc
call dword [0x43f294]
jmp 0x43409b
call edi
lea ecx, [ebp - 0x44]
call dword [0x43f208]
push str._nIv_size_must_be_16_bytes__press_any_key_to_continue_...__n
call fcn.00439510
add esp, 4
call esi
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0xc
call dword [0x43f294]
jmp 0x43409b
push str._nIv_path_error__press_any_key_to_continue_...__n
call fcn.00439510
add esp, 4
call esi
lea eax, [ebp - 0x84]
xor edi, edi
push eax
lea ecx, [ebp - 0xa8]
call dword [0x43f218]
push ecx
mov eax, esp
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0xa8]
xor esi, esi
mov dword [eax], 1
call dword [0x43f210]
test al, al
je 0x43419b
lea eax, [ebp - 0x6c]
push eax
lea ecx, [ebp - 0xa8]
call dword [0x43f194]
push eax
lea ecx, [ebp - 0x50]
call dword [0x43f264]
lea ecx, [ebp - 0x6c]
call dword [0x43f294]
lea ecx, [ebp - 0xa8]
call dword [0x43f21c]
mov eax, dword [ebp - 0x50]
mov edi, dword [eax + 4]
mov eax, edi
mov dword [ebp - 0x8c], edi
and eax, 0xf
je 0x43417a
mov edi, 0x10
sub edi, eax
mov eax, dword [ebp - 0x8c]
add eax, edi
push eax
mov dword [ebp - 0x6c], eax
call fcn.004395d8
push edi
mov dword [ebp - 0x74], eax
call fcn.004395d8
push edi
mov esi, eax
push 0xff
push esi
call fcn.0043a378
add esp, 0x14
lea ecx, [ebp - 0x50]
push dword [ebp - 0x8c]
call dword [0x43f290]
push eax
push dword [ebp - 0x74]
call fcn.0043a372
mov eax, dword [ebp - 0x8c]
push edi
push esi
mov esi, dword [ebp - 0x74]
add eax, esi
push eax
call fcn.0043a372
mov edi, dword [ebp - 0x6c]
add esp, 0x18
jmp 0x4341ae
push edi
call fcn.004395d8
add esp, 4
lea ecx, [ebp - 0x50]
mov esi, eax
push edi
call dword [0x43f290]
push eax
push esi
call fcn.0043a372
add esp, 0xc
jmp 0x4341ae
push str._nFirmware_path_error__press_any_key_to_continue_...__n
call fcn.00439510
add esp, 4
call dword [0x43f45c]
push str._nBegin_encrypt_...__n
call fcn.00439510
add esp, 4
lea ecx, [ebp - 0x100]
push 0
call fcn.0042f7b0
push esi
push dword [ebp - 0xac]
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 0xf
push eax
lea eax, [ebp - 0x2c]
push eax
push edi
push esi
lea ecx, [ebp - 0x100]
call fcn.0042f900
push edi
push esi
push ecx
lea eax, [ebp - 0x48]
mov ecx, esp
push eax
call dword [0x43f288]
call fcn.00430c70
add esp, 0xc
test eax, eax
je 0x434286
test esi, esi
je 0x434216
push 1
push esi
call fcn.004395ca
add esp, 8
push str._nGenerate_success_...__n
call fcn.00439510
add esp, 4
lea ecx, [ebp - 0x100]
xor edi, edi
call fcn.0042f7e0
mov esi, dword [0x43f214]
lea ecx, [ebp - 0xa8]
call esi
lea ecx, [ebp - 0xa0]
call esi
lea ecx, [ebp - 0xb8]
call esi
lea ecx, [ebp - 0x50]
call dword [0x43f294]
lea ecx, [ebp - 0x64]
call dword [0x43f338]
lea ecx, [ebp - 0x88]
call dword [0x43f338]
lea ecx, [ebp - 0x84]
call dword [0x43f338]
lea ecx, [ebp - 0x48]
call dword [0x43f338]
jmp 0x434ce3
test esi, esi
je 0x434295
push 1
push esi
call fcn.004395ca
add esp, 8
push str._nWrite_out_file_error__press_any_key_to_continue_...__n
call fcn.00439510
add esp, 4
call dword [0x43f45c]
lea ecx, [ebp - 0x100]
call fcn.0042f7e0
mov edi, dword [0x43f214]
lea ecx, [ebp - 0xa8]
call edi
lea ecx, [ebp - 0xa0]
call edi
lea ecx, [ebp - 0xb8]
call edi
lea ecx, [ebp - 0x50]
call dword [0x43f294]
lea ecx, [ebp - 0x64]
call dword [0x43f338]
lea ecx, [ebp - 0x88]
call dword [0x43f338]
lea ecx, [ebp - 0x84]
call dword [0x43f338]
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 2
call dword [0x43f338]
mov esi, dword [ebp - 0x34]
jmp 0x43484c
mov ecx, 0x443e90
mov eax, edx
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x2d], dl
mov edx, dword [ebp - 0x44]
jne 0x434347
cmp byte [ebp - 0x2d], 0
je 0x434343
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x2d], dl
mov edx, dword [ebp - 0x44]
jne 0x434347
add eax, 2
add ecx, 2
cmp byte [ebp - 0x2d], 0
jne 0x434317
xor eax, eax
jmp 0x43434c
sbb eax, eax
or eax, 1
test eax, eax
jne 0x434726
push str.Establish_connection_to_the_COM_port__n
call fcn.00439510
mov ecx, dword [0x44ee18]
add esp, 4
push 0
push 0
call fcn.0040e8f0
mov dword [0x44ed54], 0
mov dword [0x44ed50], 0
cmp dword [ebp + 8], esi
jle 0x4346c7
nop dword [eax]
mov edi, dword [ebp + 8]
dec edi
cmp esi, edi
jge 0x4346c7
mov eax, dword [ebp - 0x3c]
inc esi
mov dword [ebp - 0x34], esi
mov esi, dword [eax + esi*4]
push esi
call fcn.00432a70
add esp, 4
test al, al
jne 0x4346c7
push esi
call fcn.00432dd0
add esp, 4
test al, al
je 0x43470e
mov esi, dword [ebp - 0x34]
cmp esi, edi
jge 0x4346c7
mov edi, dword [ebp - 0x3c]
inc esi
mov dword [ebp - 0x34], esi
mov ecx, str.__pn
mov eax, dword [edi + esi*4 - 4]
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x2d], dl
mov edx, dword [edi + esi*4 - 4]
jne 0x434415
cmp byte [ebp - 0x2d], 0
je 0x434411
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x2d], dl
mov edx, dword [edi + esi*4 - 4]
jne 0x434415
add eax, 2
add ecx, 2
cmp byte [ebp - 0x2d], 0
jne 0x4343e3
xor eax, eax
jmp 0x43441a
sbb eax, eax
or eax, 1
test eax, eax
jne 0x434434
push dword [edi + esi*4]
call dword [0x43f3b8]
add esp, 4
mov dword [0x44e404], eax
jmp 0x4346be
mov ecx, str.__br
mov eax, edx
nop dword [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x2d], dl
mov edx, dword [edi + esi*4 - 4]
jne 0x434472
cmp byte [ebp - 0x2d], 0
je 0x43446e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x2d], dl
mov edx, dword [edi + esi*4 - 4]
jne 0x434472
add eax, 2
add ecx, 2
cmp byte [ebp - 0x2d], 0
jne 0x434440
xor eax, eax
jmp 0x434477
sbb eax, eax
or eax, 1
test eax, eax
jne 0x434491
push dword [edi + esi*4]
call dword [0x43f3b8]
add esp, 4
mov dword [0x44e3f4], eax
jmp 0x4346be
mov ecx, str.__db
mov eax, edx
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x2d], dl
mov edx, dword [edi + esi*4 - 4]
jne 0x4344ca
cmp byte [ebp - 0x2d], 0
je 0x4344c6
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x2d], dl
mov edx, dword [edi + esi*4 - 4]
jne 0x4344ca
add eax, 2
add ecx, 2
cmp byte [ebp - 0x2d], 0
jne 0x434498
xor eax, eax
jmp 0x4344cf
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4344e9
push dword [edi + esi*4]
call dword [0x43f3b8]
add esp, 4
mov dword [0x44e3f8], eax
jmp 0x4346be
mov ecx, str.__pr
mov eax, edx
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x2d], dl
mov edx, dword [edi + esi*4 - 4]
jne 0x434522
cmp byte [ebp - 0x2d], 0
je 0x43451e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x2d], dl
mov edx, dword [edi + esi*4 - 4]
jne 0x434522
add eax, 2
add ecx, 2
cmp byte [ebp - 0x2d], 0
jne 0x4344f0
xor eax, eax
jmp 0x434527
sbb eax, eax
or eax, 1
test eax, eax
jne 0x43460d
mov ecx, dword [edi + esi*4]
mov edx, str.NONE
mov dword [ebp - 0x64], ecx
mov eax, ecx
nop dword [eax]
mov cl, byte [eax]
cmp cl, byte [edx]
mov byte [ebp - 0x2d], cl
mov ecx, dword [ebp - 0x64]
jne 0x434570
cmp byte [ebp - 0x2d], 0
je 0x43456c
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
mov byte [ebp - 0x2d], cl
mov ecx, dword [ebp - 0x64]
jne 0x434570
add eax, 2
add edx, 2
cmp byte [ebp - 0x2d], 0
jne 0x434540
xor eax, eax
jmp 0x434575
sbb eax, eax
or eax, 1
test eax, eax
jne 0x434583
mov dword [0x44e3fc], eax
jmp 0x4346be
mov edx, 0x443ff8
mov eax, ecx
nop word [eax + eax]
mov cl, byte [eax]
cmp cl, byte [edx]
mov byte [ebp - 0x2d], cl
mov ecx, dword [ebp - 0x64]
jne 0x4345c0
cmp byte [ebp - 0x2d], 0
je 0x4345bc
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
mov byte [ebp - 0x2d], cl
mov ecx, dword [ebp - 0x64]
jne 0x4345c0
add eax, 2
add edx, 2
cmp byte [ebp - 0x2d], 0
jne 0x434590
xor eax, eax
jmp 0x4345c5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4345d8
mov eax, 1
mov dword [0x44e3fc], eax
jmp 0x4346be
mov eax, str.EVEN
nop dword [eax]
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x4345fe
test dl, dl
je 0x4345fc
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x4345fe
add ecx, 2
add eax, 2
test dl, dl
jne 0x4345e0
xor eax, eax
mov eax, 2
mov dword [0x44e3fc], eax
jmp 0x4346be
mov ecx, str.__sb
mov eax, edx
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x2d], dl
mov edx, dword [edi + esi*4 - 4]
jne 0x434646
cmp byte [ebp - 0x2d], 0
je 0x434642
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x2d], dl
mov edx, dword [edi + esi*4 - 4]
jne 0x434646
add eax, 2
add ecx, 2
cmp byte [ebp - 0x2d], 0
jne 0x434614
xor eax, eax
jmp 0x43464b
sbb eax, eax
or eax, 1
test eax, eax
jne 0x43466c
push dword [edi + esi*4]
call dword [0x43f3b8]
add esp, 4
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [0x44e400], xmm0
jmp 0x4346be
mov eax, str.__to
mov cl, byte [edx]
cmp cl, byte [eax]
jne 0x434691
test cl, cl
je 0x43468d
mov cl, byte [edx + 1]
cmp cl, byte [eax + 1]
jne 0x434691
add edx, 2
add eax, 2
test cl, cl
jne 0x434671
xor eax, eax
jmp 0x434696
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4346be
push dword [edi + esi*4]
call dword [0x43f3b4]
add esp, 4
fstp qword [ebp - 0x94]
movsd xmm0, qword [ebp - 0x94]
call fcn.00439aa0
mov dword [0x44e3f0], eax
cmp esi, dword [ebp + 8]
jl 0x434390
mov eax, dword [0x44ee18]
push dword [0x44e3f0]
movss xmm0, dword [0x44e400]
mov eax, dword [eax + 0xde]
mov ecx, dword [eax + 0xc]
push ecx
movss dword [esp], xmm0
push dword [0x44e3fc]
mov eax, dword [ecx]
push dword [0x44e3f8]
push dword [0x44e3f4]
push dword [0x44e404]
call dword [eax + 0x1c]
mov esi, dword [ebp - 0x34]
jmp 0x43484c
mov eax, dword [ebp + 8]
dec eax
cmp dword [ebp - 0x34], eax
jge 0x4394d9
push esi
push str._nbad_parameter___s___n
jmp 0x4394d1
mov eax, str._dfu
nop dword [eax + eax]
mov cl, byte [edx]
cmp cl, byte [eax]
jne 0x434750
test cl, cl
je 0x43474c
mov cl, byte [edx + 1]
cmp cl, byte [eax + 1]
jne 0x434750
add edx, 2
add eax, 2
test cl, cl
jne 0x434730
xor eax, eax
jmp 0x434755
sbb eax, eax
or eax, 1
test eax, eax
jne 0x43484c
push str.Establish_connection_to_the_USB_port__n
call fcn.00439510
mov ecx, dword [0x44ee18]
add esp, 4
push 1
push 2
call fcn.0040e8f0
push 0x200
mov dword [0x44ed54], 2
mov dword [0x44ed50], esi
call edi
add esp, 4
mov dword [0x44ee24], eax
xor esi, esi
nop word [eax + eax]
push 0x100
call edi
mov ecx, dword [0x44ee24]
add esp, 4
mov dword [esi + ecx], eax
add esi, 4
cmp esi, 0x200
jl 0x4347a0
push 0x80
call fcn.004395d8
push eax
push dword [0x44ee24]
mov dword [0x44ee28], eax
push 0x43f4f4
call fcn.004307c0
mov ecx, dword [0x44ee1c]
add esp, 0x10
mov eax, dword [0x44ee24]
mov edx, dword [eax + ecx*4]
mov eax, dword [0x44ee28]
mov dword [0x44ee20], edx
mov al, byte [ecx + eax]
mov byte [0x44e408], al
test al, al
jne 0x434830
push str.The_software_will_exit__Please_update_the_DFU_driver_first__you_can_download_the_installation_package_from_the_official_website___n
call fcn.00439510
add esp, 4
push 5
push 0
push 0
push str.http:__gd32mcu.com
push str.open
push 0
call dword [0x43f364]
jmp 0x434ce1
mov eax, dword [0x44ee18]
push edx
mov eax, dword [eax + 0xde]
mov ecx, dword [eax + 0xc]
mov eax, dword [ecx]
call dword [eax + 0x10]
mov esi, 2
mov dword [ebp - 0x34], esi
mov eax, dword [0x44ee18]
mov eax, dword [eax + 0xde]
mov ecx, dword [eax + 0xc]
mov eax, dword [ecx]
mov eax, dword [eax]
call eax
test al, al
jne 0x434885
push str._nOpening_port______Failed__n
call fcn.00439510
push str._nCannot_open_the_com_port_the_port_may_be_used_by_another_application_n
call fcn.00439510
mov eax, dword [0x44ee18]
add esp, 8
jmp 0x434942
mov eax, dword [0x44ee18]
push str._nOpening_port______Successful__n
mov dword [eax + 0x20], 1
call fcn.00439510
mov ecx, dword [0x44ee18]
add esp, 4
call fcn.0040c720
test al, al
je 0x4348d1
nop dword [eax]
mov eax, dword [ebp - 0xb0]
cmp eax, 0xa
jge 0x434926
mov ecx, dword [0x44ee18]
inc eax
mov dword [ebp - 0xb0], eax
call fcn.0040c720
test al, al
jne 0x4348b0
call dword [0x43f0a4]
test eax, eax
jne 0x4348e8
push str.GD32MCU_initial_failed__n
call fcn.00439510
add esp, 4
mov ecx, dword [0x44ee18]
call fcn.0040bfc0
test eax, eax
jne 0x4349b9
mov edi, dword [ebp - 0x3c]
mov ecx, 0x443eac
mov eax, dword [edi + esi*4]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x434966
test dl, dl
je 0x434922
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x434966
add eax, 2
add ecx, 2
test dl, dl
jne 0x434906
xor eax, eax
jmp 0x43496b
push str._nNO_response_from_the_device_please_verify_the_boot_mode_configuration_check_the_USART_cable.Reset_the_device_and_try_again..._n
call fcn.00439510
mov eax, dword [0x44ee18]
add esp, 4
cmp dword [eax + 0x20], 0
je 0x4394b9
mov eax, dword [eax + 0xde]
mov ecx, dword [eax + 0xc]
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [0x44ee18]
mov edi, 1
mov dword [eax + 0x20], 0
jmp 0x434ce3
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4349dc
cmp esi, dword [ebp + 8]
jge 0x434978
inc esi
mov dword [ebp - 0x34], esi
mov esi, dword [edi + esi*4]
mov ecx, dword [0x44ee18]
push esi
call fcn.0040cd20
mov eax, dword [0x44ee18]
push dword [eax + 0x40]
call fcn.004323d0
add esp, 4
test eax, eax
je 0x4394b9
mov ecx, dword [0x44ee18]
push esi
call fcn.0040cd20
mov esi, dword [ebp - 0x34]
cmp esi, dword [ebp + 8]
jge 0x4349dc
inc esi
mov dword [ebp - 0x34], esi
jmp 0x4349dc
mov eax, dword [0x44ee18]
push dword [eax + 0x40]
call fcn.004323d0
add esp, 4
test eax, eax
je 0x4394b9
mov ecx, dword [0x44ee18]
call fcn.0040bfc0
mov ecx, dword [0x44ee18]
lea eax, [ebp - 0x6c]
push eax
lea ecx, [ecx + 0x50]
call dword [0x43f274]
mov ecx, eax
mov byte [ebp - 4], 0x10
call dword [0x43f290]
lea ecx, [ebp - 0x6c]
mov byte [ebp - 4], 2
call dword [0x43f294]
mov ecx, dword [0x44ee18]
lea eax, [ebp - 0x6c]
push eax
lea ecx, [ecx + 0x50]
call dword [0x43f274]
mov ecx, eax
mov byte [ebp - 4], 0x11
call dword [0x43f290]
push eax
push str._nDevice___s_n
call fcn.00439510
add esp, 8
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x6c]
call dword [0x43f294]
mov eax, dword [0x44ee18]
mov ecx, dword [eax + 0xda]
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
call eax
test eax, eax
jne 0x434a6f
push str.Init_OptionBytes_failed_
call fcn.00439510
add esp, 4
mov edi, 1
jmp 0x434ce3
mov ecx, dword [0x44ee18]
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
test eax, eax
je 0x434ada
push str._nDevice_may_be_read_protected__n
call fcn.00439510
mov ecx, dword [0x44ee18]
add esp, 4
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
test eax, eax
je 0x434b94
push str._nDisabling_read_protection_______Successful__n
call fcn.00439510
add esp, 4
push 0x5dc
call dword [0x43f130]
mov ecx, dword [0x44ee18]
call fcn.0040c720
test al, al
jne 0x434b82
push str._nReseting_device_______Successful__n
call fcn.00439510
add esp, 4
mov ecx, dword [0x44ee18]
mov eax, dword [ecx]
mov eax, dword [eax + 0x58]
call eax
test eax, eax
je 0x4394fc
mov eax, dword [0x44ee18]
push ecx
mov ecx, esp
push dword [eax + 0xbe]
call fcn.0040f700
mov eax, dword [0x44ee18]
sub esp, 0x44
add eax, 0x40
mov ecx, esp
push eax
call fcn.0040b3a0
mov ecx, dword [0x44ee18]
mov ecx, dword [ecx + 0xd6]
call fcn.00418db0
mov ecx, dword [0x44ee18]
mov eax, dword [ecx]
call dword [eax + 0x60]
mov edi, dword [ebp + 8]
cmp esi, edi
jge 0x434ca5
nop dword [eax]
mov eax, dword [ebp - 0x3c]
mov byte [ebp - 0x2d], 1
mov esi, dword [eax + esi*4]
push esi
call fcn.00432a70
add esp, 4
test al, al
je 0x4394c3
mov ecx, str._Rts
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x434ba6
test dl, dl
je 0x434b7e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x434ba6
add eax, 2
add ecx, 2
test dl, dl
jne 0x434b62
xor eax, eax
jmp 0x434bab
push str._nReseting_device_______Failed__n
call fcn.00439510
add esp, 4
jmp 0x43947d
push str._nDisabling_read_protection_______Failed__n
call fcn.00439510
add esp, 4
jmp 0x43947d
sbb eax, eax
or eax, 1
test eax, eax
jne 0x434d1e
mov esi, dword [ebp - 0x34]
nop word [eax + eax]
lea eax, [edi - 1]
cmp esi, eax
jge 0x438a95
mov eax, dword [ebp - 0x3c]
inc esi
mov dword [ebp - 0x34], esi
mov esi, dword [eax + esi*4]
push esi
call fcn.00432a70
add esp, 4
test al, al
jne 0x438a92
push esi
call fcn.00432dd0
add esp, 4
test al, al
je 0x438ace
mov ecx, str.__Hi
mov eax, esi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x434c20
test dl, dl
je 0x434c1c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x434c20
add eax, 2
add ecx, 2
test dl, dl
jne 0x434c00
xor eax, eax
jmp 0x434c25
sbb eax, eax
or eax, 1
test eax, eax
jne 0x434c3a
push str._nSet_Rts_line_______Successful__n
call fcn.00439510
add esp, 4
push 1
jmp 0x434c7c
mov eax, str.__Lo
nop
mov cl, byte [esi]
cmp cl, byte [eax]
jne 0x434c60
test cl, cl
je 0x434c5c
mov cl, byte [esi + 1]
cmp cl, byte [eax + 1]
jne 0x434c60
add esi, 2
add eax, 2
test cl, cl
jne 0x434c40
xor eax, eax
jmp 0x434c65
sbb eax, eax
or eax, 1
test eax, eax
jne 0x438aa2
push str._nSet_Rts_line_______Successful__n
call fcn.00439510
add esp, 4
push 0
mov eax, dword [0x44ee18]
mov ecx, dword [eax + 0xde]
mov ecx, dword [ecx + 0xc]
call fcn.00429870
push 0x32
call dword [0x43f130]
mov edi, dword [ebp + 8]
mov esi, dword [ebp - 0x34]
cmp esi, edi
jl 0x434bc0
mov eax, dword [0x44ee18]
cmp dword [eax + 0x20], 0
je 0x434cca
mov eax, dword [eax + 0xde]
mov ecx, dword [eax + 0xc]
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [0x44ee18]
mov dword [eax + 0x20], 0
call dword [0x43f0a8]
test eax, eax
jne 0x434ce1
push str.GD32MCU_dll_release_resource_failed__n
call fcn.00439510
add esp, 4
xor edi, edi
lea ecx, [ebp - 0x80]
call dword [0x43f338]
lea ecx, [ebp - 0x38]
call dword [0x43f338]
lea ecx, [ebp - 0x288]
call dword [0x43f190]
mov eax, edi
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.004395e6
mov esp, ebp
pop ebp
ret
mov ecx, str._Dtr
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x434d45
test dl, dl
je 0x434d41
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x434d45
add eax, 2
add ecx, 2
test dl, dl
jne 0x434d25
xor eax, eax
jmp 0x434d4a
sbb eax, eax
or eax, 1
test eax, eax
jne 0x434e3c
mov esi, dword [ebp - 0x34]
lea eax, [edi - 1]
cmp esi, eax
jge 0x438a95
mov eax, dword [ebp - 0x3c]
inc esi
mov dword [ebp - 0x34], esi
mov esi, dword [eax + esi*4]
push esi
call fcn.00432a70
add esp, 4
test al, al
jne 0x438a92
push esi
call fcn.00432dd0
add esp, 4
test al, al
je 0x438aec
mov ecx, str.__Hi
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x434db3
test dl, dl
je 0x434daf
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x434db3
add eax, 2
add ecx, 2
test dl, dl
jne 0x434d93
xor eax, eax
jmp 0x434db8
sbb eax, eax
or eax, 1
test eax, eax
jne 0x434dcd
push str._nSet_Dtr_line_______Successful__n
call fcn.00439510
add esp, 4
push 1
jmp 0x434e0e
mov eax, str.__Lo
mov cl, byte [esi]
cmp cl, byte [eax]
jne 0x434df2
test cl, cl
je 0x434dee
mov cl, byte [esi + 1]
cmp cl, byte [eax + 1]
jne 0x434df2
add esi, 2
add eax, 2
test cl, cl
jne 0x434dd2
xor eax, eax
jmp 0x434df7
sbb eax, eax
or eax, 1
test eax, eax
jne 0x438ae5
push str._nSet_Dtr_line_______Successful__n
call fcn.00439510
add esp, 4
push 0
mov eax, dword [0x44ee18]
mov ecx, dword [eax + 0xde]
mov ecx, dword [ecx + 0xc]
call fcn.00429810
push 0x32
call dword [0x43f130]
mov edi, dword [ebp + 8]
mov esi, dword [ebp - 0x34]
cmp esi, edi
jl 0x434d55
jmp 0x434ca5
mov ecx, 0x443e9c
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x434e63
test dl, dl
je 0x434e5f
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x434e63
add eax, 2
add ecx, 2
test dl, dl
jne 0x434e43
xor eax, eax
jmp 0x434e68
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4353ca
mov esi, dword [ebp - 0x34]
cmp byte [ebp - 0x2d], 0
je 0x438a95
lea eax, [edi - 1]
cmp esi, eax
jge 0x438a95
mov eax, dword [ebp - 0x3c]
inc esi
mov dword [ebp - 0x34], esi
mov esi, dword [eax + esi*4]
push esi
call fcn.00432a70
add esp, 4
test al, al
jne 0x438a92
push esi
call fcn.00432dd0
add esp, 4
test al, al
je 0x438bb9
mov eax, dword [ebp - 0x34]
cmp eax, edi
jge 0x434ca5
mov esi, dword [ebp - 0x3c]
inc eax
mov dword [ebp - 0x34], eax
mov ecx, str.__all
mov esi, dword [esi + eax*4 - 4]
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x434ef1
test dl, dl
je 0x434eed
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x434ef1
add eax, 2
add ecx, 2
test dl, dl
jne 0x434ed1
xor eax, eax
jmp 0x434ef6
sbb eax, eax
or eax, 1
test eax, eax
jne 0x434fc5
mov byte [ebp - 0x2d], al
mov eax, dword [0x44ee18]
mov esi, dword [eax + 0xd6]
lea ecx, [esi + 0xc]
call fcn.0040f1c0
mov esi, dword [esi + 0xc]
cmp dword [esi + 0xc], 0
je 0x434f22
mov esi, dword [esi + 0x14]
jmp 0x434f25
add esi, 8
mov eax, dword [0x44ee18]
mov edi, dword [eax + 0xd6]
lea ecx, [edi + 0xc]
call fcn.0040f1c0
mov eax, dword [edi + 0xc]
add eax, 8
cmp esi, eax
je 0x434f73
cmp dword [esi + 0x20], 0
je 0x438b0f
mov ecx, esi
call dword [0x43f318]
mov esi, eax
mov eax, dword [0x44ee18]
mov edi, dword [eax + 0xd6]
lea ecx, [edi + 0xc]
call fcn.0040f1c0
mov eax, dword [edi + 0xc]
add eax, 8
cmp esi, eax
jne 0x434f42
mov eax, dword [0x44ed50]
test eax, eax
jne 0x434f8b
mov ecx, dword [0x44ee18]
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
call eax
jmp 0x434fab
cmp eax, 1
jne 0x4353b7
mov ecx, dword [0x44ee18]
mov eax, dword [ecx + 0x54]
mov edx, dword [ecx]
shl eax, 0xa
push eax
push dword [ecx + 0x5c]
mov eax, dword [edx + 0x2c]
call eax
test eax, eax
je 0x438b21
push str._nErasing_all_page______Successful__n
call fcn.00439510
add esp, 4
jmp 0x4353b7
mov eax, str.__sec
nop word [eax + eax]
mov cl, byte [esi]
cmp cl, byte [eax]
jne 0x434ff0
test cl, cl
je 0x434fec
mov cl, byte [esi + 1]
cmp cl, byte [eax + 1]
jne 0x434ff0
add esi, 2
add eax, 2
test cl, cl
jne 0x434fd0
xor eax, eax
jmp 0x434ff5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4353ba
mov eax, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x34]
push dword [eax + esi*4]
call dword [0x43f3b8]
mov dword [ebp - 0x60], eax
lea ecx, [eax*2 + 2]
push ecx
call dword [0x43f3c4]
mov edi, eax
lea ecx, [ebp - 0x80]
xor eax, eax
mov dword [ebp - 0x48], edi
add esp, 8
mov word [edi], ax
mov eax, dword [ebp - 0x3c]
push dword [eax + esi*4 + 4]
call dword [0x43f26c]
push 1
push 0x444674
call dword [0x43f2a8]
add esp, 8
mov dword [ebp - 0x154], eax
push 1
push 0
lea eax, [ebp - 0x154]
mov byte [ebp - 4], 0x12
push eax
lea ecx, [ebp - 0x80]
call dword [0x43f2c4]
lea ecx, [ebp - 0x154]
mov byte [ebp - 4], 2
mov esi, eax
call dword [0x43f338]
cmp esi, 0xffffffff
je 0x4351d3
push 1
push 0x444674
call dword [0x43f2a8]
add esp, 8
mov dword [ebp - 0x160], eax
push 1
push 0
lea eax, [ebp - 0x160]
mov byte [ebp - 4], 0x13
push eax
lea eax, [ebp - 0xc0]
push eax
lea ecx, [ebp - 0x80]
call dword [0x43f17c]
lea ecx, [ebp - 0x160]
mov byte [ebp - 4], 0x15
call dword [0x43f338]
lea ecx, [ebp - 0xc0]
call dword [0x43f330]
cmp eax, 2
jne 0x438b47
push 0
lea ecx, [ebp - 0xc0]
call dword [0x43f32c]
push 0xa
push 0
mov ecx, eax
call dword [0x43f270]
mov esi, eax
lea ecx, [ebp - 0xc0]
push 1
mov dword [ebp - 0x54], esi
call dword [0x43f32c]
push 0xa
push 0
mov ecx, eax
call dword [0x43f270]
mov dword [ebp - 0x68], eax
cmp esi, eax
jg 0x4351bc
xor ecx, ecx
inc ecx
movzx eax, cx
mov word [edi], cx
mov word [edi + eax*2], si
movzx eax, word [edi]
mov dword [ebp - 0x4c], eax
movzx eax, ax
movzx eax, word [edi + eax*2]
mov dword [ebp - 0x40], eax
mov eax, dword [0x44ee18]
mov esi, dword [eax + 0xd6]
lea ecx, [esi + 0xc]
call fcn.0040f1c0
mov edx, dword [esi + 0xc]
mov eax, dword [edx + 0xc]
test eax, eax
je 0x43517c
mov ecx, dword [ebp - 0x40]
xor edi, edi
cmp dword [eax + 0xc], ecx
jl 0x43516c
mov edi, eax
mov eax, dword [eax + 4]
jmp 0x43516f
mov eax, dword [eax + 8]
test eax, eax
jne 0x435160
test edi, edi
je 0x43517c
cmp ecx, dword [edi + 0xc]
jge 0x43517f
lea edi, [edx + 8]
mov eax, dword [0x44ee18]
mov esi, dword [eax + 0xd6]
lea ecx, [esi + 0xc]
call fcn.0040f1c0
mov eax, dword [esi + 0xc]
add eax, 8
cmp edi, eax
je 0x4351a6
cmp dword [edi + 0x20], 0
je 0x438b38
mov esi, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x4c]
inc esi
mov edi, dword [ebp - 0x48]
mov dword [ebp - 0x54], esi
cmp esi, dword [ebp - 0x68]
jle 0x435123
inc dword [ebp - 0x34]
lea ecx, [ebp - 0xc0]
mov byte [ebp - 4], 2
call fcn.0040ac90
jmp 0x43529c
cmp dword [ebp - 0x60], 1
mov dword [ebp - 0x54], 1
jl 0x43529c
xor esi, esi
mov eax, dword [ebp - 0x34]
inc esi
mov ecx, dword [ebp - 0x3c]
inc eax
mov word [edi], si
mov dword [ebp - 0x34], eax
push dword [ecx + eax*4]
call dword [0x43f3b8]
movzx ecx, si
add esp, 4
mov word [edi + ecx*2], ax
movzx eax, word [edi]
mov dword [ebp - 0x68], eax
movzx eax, ax
movzx eax, word [edi + eax*2]
mov dword [ebp - 0x40], eax
mov eax, dword [0x44ee18]
mov esi, dword [eax + 0xd6]
lea ecx, [esi + 0xc]
call fcn.0040f1c0
mov edx, dword [esi + 0xc]
mov eax, dword [edx + 0xc]
test eax, eax
je 0x43525c
mov ecx, dword [ebp - 0x40]
xor edi, edi
nop dword [eax]
cmp dword [eax + 0xc], ecx
jl 0x43524c
mov edi, eax
mov eax, dword [eax + 4]
jmp 0x43524f
mov eax, dword [eax + 8]
test eax, eax
jne 0x435240
test edi, edi
je 0x43525c
cmp ecx, dword [edi + 0xc]
jge 0x43525f
lea edi, [edx + 8]
mov eax, dword [0x44ee18]
mov esi, dword [eax + 0xd6]
lea ecx, [esi + 0xc]
call fcn.0040f1c0
mov eax, dword [esi + 0xc]
add eax, 8
cmp edi, eax
je 0x435286
cmp dword [edi + 0x20], 0
je 0x438b0f
mov edi, dword [ebp - 0x54]
mov esi, dword [ebp - 0x68]
inc edi
cmp edi, dword [ebp - 0x60]
mov dword [ebp - 0x54], edi
mov edi, dword [ebp - 0x48]
jle 0x4351e6
mov eax, dword [ebp - 0x48]
movzx eax, word [eax]
push eax
push str._nErasing__i_pages_:
call fcn.00439510
add esp, 8
mov dword [ebp - 0x4c], 1
cmp dword [ebp - 0x60], 1
jl 0x4353b7
mov ecx, dword [0x44ee18]
lea ecx, [ecx + 0x14]
call fcn.0041a030
mov eax, dword [0x44ee18]
mov esi, dword [eax + 0xd6]
lea ecx, [esi + 0xc]
call fcn.0040f1c0
mov esi, dword [esi + 0xc]
cmp dword [esi + 0xc], 0
je 0x4352f0
mov esi, dword [esi + 0x14]
jmp 0x4352f3
add esi, 8
mov eax, dword [0x44ee18]
mov edi, dword [eax + 0xd6]
lea ecx, [edi + 0xc]
call fcn.0040f1c0
mov eax, dword [edi + 0xc]
add eax, 8
cmp esi, eax
je 0x43536c
mov eax, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x48]
movzx eax, word [ecx + eax*2]
mov dword [ebp - 0x40], eax
nop dword [eax]
cmp dword [esi + 0xc], eax
lea ecx, [esi + 0xc]
jne 0x435342
lea eax, [esi + 0x10]
push eax
push ecx
mov ecx, dword [0x44ee18]
lea eax, [ebp - 0x248]
push eax
lea ecx, [ecx + 0x14]
call fcn.004339d0
mov ecx, esi
call dword [0x43f318]
mov esi, eax
mov eax, dword [0x44ee18]
mov edi, dword [eax + 0xd6]
lea ecx, [edi + 0xc]
call fcn.0040f1c0
mov eax, dword [edi + 0xc]
add eax, 8
cmp esi, eax
mov eax, dword [ebp - 0x40]
jne 0x435320
mov eax, dword [0x44ee18]
push ecx
add eax, 0x14
mov ecx, esp
push eax
call fcn.00432240
mov ecx, dword [0x44ee18]
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
call eax
mov edi, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x48]
movzx ecx, word [ecx + edi*2]
push ecx
test eax, eax
je 0x438baf
push str._nErasing___i_______Successful__n
call fcn.00439510
inc edi
add esp, 8
mov dword [ebp - 0x4c], edi
cmp edi, dword [ebp - 0x60]
jle 0x4352c1
mov edi, dword [ebp + 8]
mov esi, dword [ebp - 0x34]
cmp esi, edi
jl 0x434e73
jmp 0x434ca5
mov ecx, 0x443ea0
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4353f1
test dl, dl
je 0x4353ed
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4353f1
add eax, 2
add ecx, 2
test dl, dl
jne 0x4353d1
xor eax, eax
jmp 0x4353f6
sbb eax, eax
or eax, 1
test eax, eax
jne 0x435fae
mov esi, dword [ebp - 0x34]
lea eax, [edi - 1]
cmp esi, eax
jge 0x438a95
mov eax, dword [ebp - 0x3c]
inc esi
mov dword [ebp - 0x34], esi
mov esi, dword [eax + esi*4]
push esi
call fcn.00432a70
add esp, 4
test al, al
jne 0x438a92
push esi
call fcn.00432dd0
add esp, 4
test al, al
je 0x438cf6
mov eax, dword [ebp - 0x34]
cmp eax, edi
jge 0x434ca5
mov ecx, dword [ebp - 0x3c]
inc eax
mov dword [ebp - 0x34], eax
mov esi, dword [ecx + eax*4 - 4]
mov ecx, str.__all
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x435475
test dl, dl
je 0x435471
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x435475
add eax, 2
add ecx, 2
test dl, dl
jne 0x435455
xor eax, eax
jmp 0x43547a
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4358e0
mov esi, dword [ebp - 0x34]
mov ecx, str.__fn
mov edi, dword [ebp - 0x3c]
inc esi
mov dword [ebp - 0x34], esi
mov eax, dword [edi + esi*4 - 4]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4354b5
test dl, dl
je 0x4354b1
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4354b5
add eax, 2
add ecx, 2
test dl, dl
jne 0x435495
xor eax, eax
jmp 0x4354ba
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4354ca
push dword [edi + esi*4]
lea ecx, [ebp - 0x38]
call dword [0x43f26c]
push str._nUPLOADING_...__n_n
call fcn.00439510
add esp, 4
lea ecx, [ebp - 0xd8]
call dword [0x43f1b4]
lea eax, [ebp - 0x38]
push eax
lea ecx, [ebp - 0x148]
call dword [0x43f218]
mov eax, dword [0x44ee18]
mov byte [ebp - 4], 0x16
mov eax, dword [eax + 0x54]
shl eax, 0xa
push eax
mov dword [ebp - 0x68], eax
call dword [0x43f3c4]
mov ecx, dword [0x44ee18]
add esp, 4
add ecx, 0x14
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x48], eax
call fcn.0041a030
mov ecx, dword [0x44ee18]
mov esi, dword [ecx + 0xd6]
lea ecx, [esi + 0xc]
call fcn.0040f1c0
mov esi, dword [esi + 0xc]
cmp dword [esi + 0xc], 0
je 0x435545
mov esi, dword [esi + 0x14]
jmp 0x435548
add esi, 8
mov eax, dword [0x44ee18]
mov edi, dword [eax + 0xd6]
lea ecx, [edi + 0xc]
call fcn.0040f1c0
mov eax, dword [edi + 0xc]
add eax, 8
cmp esi, eax
je 0x435619
nop dword [eax]
mov ecx, dword [esi + 0x10]
lea eax, [esi + 0x10]
mov dword [ebp - 0x54], ecx
lea edi, [esi + 0xc]
mov ecx, dword [esi + 0x18]
mov dword [ebp - 0x4c], ecx
mov ecx, dword [0x44ee18]
push eax
push edi
lea eax, [ebp - 0x258]
push eax
lea ecx, [ecx + 0x14]
call fcn.004339d0
mov ecx, dword [0x44ee18]
push dword [ebp - 0x4c]
push dword [ebp - 0x48]
mov eax, dword [ecx]
push dword [ebp - 0x54]
mov eax, dword [eax + 0x20]
call eax
movd xmm0, dword [ebp - 0x4c]
sub esp, 8
mov ecx, dword [edi]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x444e34]
cvtps2pd xmm0, xmm0
movsd qword [esp], xmm0
push dword [ebp - 0x54]
push ecx
test eax, eax
je 0x438bd0
push str.Uploading_____page___8d___16x_size___8.2f_KB______Successful__n
call fcn.00439510
mov eax, dword [ebp - 0x48]
add esp, 0x14
add eax, dword [ebp - 0x4c]
mov ecx, esi
mov dword [ebp - 0x48], eax
call dword [0x43f318]
mov esi, eax
mov eax, dword [0x44ee18]
mov edi, dword [eax + 0xd6]
lea ecx, [edi + 0xc]
call fcn.0040f1c0
mov eax, dword [edi + 0xc]
add eax, 8
cmp esi, eax
jne 0x435570
lea eax, [ebp - 0x38]
push eax
call dword [0x43f1a0]
add esp, 4
test al, al
jne 0x435702
lea eax, [ebp - 0x1e0]
push eax
lea ecx, [ebp - 0x38]
call dword [0x43f274]
mov ecx, eax
mov byte [ebp - 4], 0x17
call dword [0x43f290]
push eax
push str._nfile__s_does_not_exist_.._Creating_file_n
call fcn.00439510
add esp, 8
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x1e0]
call dword [0x43f294]
push 1
push 0xffffffffffffffff
push ecx
mov ecx, esp
push 0x5c
call dword [0x43f254]
lea ecx, [ebp - 0x38]
call dword [0x43f1f0]
push eax
lea eax, [ebp - 0xf8]
push eax
lea ecx, [ebp - 0x38]
call dword [0x43f27c]
lea eax, [ebp - 0xf8]
mov byte [ebp - 4], 0x18
push eax
lea ecx, [ebp - 0x118]
call dword [0x43f1a4]
lea eax, [ebp - 0xf8]
mov byte [ebp - 4], 0x19
push eax
lea ecx, [ebp - 0x118]
call dword [0x43f1b0]
test al, al
jne 0x4356d6
lea eax, [ebp - 0xf8]
push eax
lea ecx, [ebp - 0x118]
call dword [0x43f1ac]
lea eax, [ebp - 0x38]
push eax
lea ecx, [ebp - 0x148]
call dword [0x43f19c]
lea ecx, [ebp - 0x118]
call dword [0x43f1a8]
lea ecx, [ebp - 0xf8]
mov byte [ebp - 4], 0x16
call dword [0x43f338]
push ecx
mov eax, esp
lea ecx, [ebp - 0x148]
mov dword [eax], 2
call dword [0x43f210]
test al, al
je 0x438bdd
push str._nWriting_data_to_file..._n
call fcn.00439510
add esp, 4
lea ecx, [ebp - 0x104]
call dword [0x43f1c8]
push 3
lea eax, [ebp - 0x1e8]
mov byte [ebp - 4], 0x1a
push eax
lea ecx, [ebp - 0x38]
call dword [0x43f244]
push eax
lea ecx, [ebp - 0x104]
call dword [0x43f2d4]
lea ecx, [ebp - 0x1e8]
call dword [0x43f338]
lea eax, [ebp - 0x1f0]
push eax
lea ecx, [ebp - 0x104]
call dword [0x43f2c0]
mov ecx, dword [eax]
push 1
push 0xffffffffffffffff
push 0x4447a0
push dword [ecx + 4]
mov ecx, eax
mov byte [ebp - 4], 0x1b
call dword [0x43f1f4]
push eax
call dword [0x43f188]
add esp, 0x14
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0x1f0]
mov esi, eax
call dword [0x43f338]
test esi, esi
jne 0x4357db
lea ecx, [ebp - 0x148]
call dword [0x43f21c]
push ecx
lea eax, [ebp - 0x38]
mov ecx, esp
push eax
call dword [0x43f288]
mov edi, dword [ebp - 0x60]
push edi
call fcn.0042fa70
add esp, 8
jmp 0x435847
lea ecx, [ebp - 0x11c]
call dword [0x43f28c]
mov edi, dword [ebp - 0x60]
xor esi, esi
mov byte [ebp - 4], 0x1c
cmp dword [ebp - 0x68], esi
jle 0x43581c
movzx eax, byte [esi + edi]
lea ecx, [ebp - 0x11c]
push eax
push esi
lea eax, [ebp - 0x290]
push eax
call dword [0x43f200]
mov ecx, eax
call dword [0x43f1fc]
inc esi
cmp esi, dword [ebp - 0x68]
jl 0x4357f5
lea eax, [ebp - 0x11c]
push eax
lea ecx, [ebp - 0x148]
call dword [0x43f198]
lea ecx, [ebp - 0x148]
call dword [0x43f21c]
lea ecx, [ebp - 0x11c]
call dword [0x43f294]
lea ecx, [ebp - 0x104]
mov byte [ebp - 4], 0x16
call dword [0x43f338]
mov esi, dword [0x43f1bc]
lea ecx, [ebp - 0xd8]
call esi
lea ecx, [ebp - 0xd8]
call esi
mov ecx, eax
call fcn.00439b20
divsd xmm0, qword [0x444e38]
sub esp, 8
movsd qword [esp], xmm0
push str._n_f_seconds_n
call fcn.00439510
add esp, 0xc
test edi, edi
je 0x43589f
push edi
call dword [0x43f3cc]
add esp, 4
lea eax, [ebp - 0x204]
push eax
lea ecx, [ebp - 0x38]
call dword [0x43f274]
mov ecx, eax
mov byte [ebp - 4], 0x1d
call dword [0x43f290]
push eax
push str._nUploaded_data_is_dumped_on__s_n
call fcn.00439510
add esp, 8
lea ecx, [ebp - 0x204]
call dword [0x43f294]
lea ecx, [ebp - 0x148]
jmp 0x435f91
mov eax, str.__sec
mov cl, byte [esi]
cmp cl, byte [eax]
jne 0x435905
test cl, cl
je 0x435901
mov cl, byte [esi + 1]
cmp cl, byte [eax + 1]
jne 0x435905
add esi, 2
add eax, 2
test cl, cl
jne 0x4358e5
xor eax, eax
jmp 0x43590a
sbb eax, eax
or eax, 1
test eax, eax
jne 0x435f9e
mov eax, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x34]
push dword [eax + esi*4]
call dword [0x43f3b8]
mov dword [ebp - 0x48], eax
lea ecx, [eax*2 + 2]
push ecx
call dword [0x43f3c4]
mov edi, eax
lea ecx, [ebp - 0x80]
xor eax, eax
mov dword [ebp - 0x4c], edi
add esp, 8
mov word [edi], ax
mov eax, dword [ebp - 0x3c]
push dword [eax + esi*4 + 4]
call dword [0x43f26c]
push 1
push 0x444674
call dword [0x43f2a8]
add esp, 8
mov dword [ebp - 0x164], eax
push 1
push 0
lea eax, [ebp - 0x164]
mov byte [ebp - 4], 0x1e
push eax
lea ecx, [ebp - 0x80]
call dword [0x43f2c4]
lea ecx, [ebp - 0x164]
mov byte [ebp - 4], 2
mov esi, eax
call dword [0x43f338]
cmp esi, 0xffffffff
je 0x435a57
push 1
push 0x444674
call dword [0x43f2a8]
add esp, 8
mov dword [ebp - 0x168], eax
push 1
push 0
lea eax, [ebp - 0x168]
mov byte [ebp - 4], 0x1f
push eax
lea eax, [ebp - 0xbc]
push eax
lea ecx, [ebp - 0x80]
call dword [0x43f17c]
lea ecx, [ebp - 0x168]
mov byte [ebp - 4], 0x21
call dword [0x43f338]
lea ecx, [ebp - 0xbc]
call dword [0x43f330]
cmp eax, 2
jne 0x438c2f
push 0
lea ecx, [ebp - 0xbc]
call dword [0x43f32c]
push 0xa
push 0
mov ecx, eax
call dword [0x43f270]
push 1
lea ecx, [ebp - 0xbc]
mov esi, eax
call dword [0x43f32c]
push 0xa
push 0
mov ecx, eax
call dword [0x43f270]
cmp esi, eax
jg 0x435a3f
nop dword [eax]
inc word [edi]
movzx ecx, word [edi]
mov word [edi + ecx*2], si
inc esi
cmp esi, eax
jle 0x435a30
mov esi, dword [ebp - 0x34]
lea ecx, [ebp - 0xbc]
inc esi
mov byte [ebp - 4], 2
call fcn.0040ac90
mov edi, dword [ebp - 0x48]
jmp 0x435a94
mov edi, dword [ebp - 0x48]
cmp edi, 1
jl 0x435a91
nop
mov eax, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x3c]
inc word [eax]
mov si, word [eax]
mov eax, dword [ebp - 0x34]
inc eax
mov dword [ebp - 0x34], eax
push dword [ecx + eax*4]
call dword [0x43f3b8]
mov edx, dword [ebp - 0x4c]
add esp, 4
movzx ecx, si
mov word [edx + ecx*2], ax
sub edi, 1
jne 0x435a60
mov edi, dword [ebp - 0x48]
mov esi, dword [ebp - 0x34]
mov eax, dword [ebp - 0x3c]
add esi, 2
mov dword [ebp - 0x34], esi
mov ecx, str.__fn
mov eax, dword [eax + esi*4 - 4]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x435ac6
test dl, dl
je 0x435ac2
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x435ac6
add eax, 2
add ecx, 2
test dl, dl
jne 0x435aa6
xor eax, eax
jmp 0x435acb
sbb eax, eax
or eax, 1
test eax, eax
jne 0x435ade
mov eax, dword [ebp - 0x3c]
lea ecx, [ebp - 0x38]
push dword [eax + esi*4]
call dword [0x43f26c]
push str._nUPLOADING_...__n_n
call fcn.00439510
add esp, 4
lea ecx, [ebp - 0xd8]
call dword [0x43f1b8]
lea eax, [ebp - 0x38]
push eax
lea ecx, [ebp - 0xb8]
call dword [0x43f218]
mov ecx, dword [0x44ee18]
xor esi, esi
mov byte [ebp - 4], 0x22
mov dword [ebp - 0x60], esi
lea ecx, [ecx + 0x14]
call fcn.0041a030
mov dword [ebp - 0x44], 1
cmp edi, 1
jl 0x435be8
nop
mov eax, dword [0x44ee18]
mov esi, dword [eax + 0xd6]
lea ecx, [esi + 0xc]
call fcn.0040f1c0
mov esi, dword [esi + 0xc]
cmp dword [esi + 0xc], 0
je 0x435b51
mov esi, dword [esi + 0x14]
jmp 0x435b54
add esi, 8
mov eax, dword [0x44ee18]
mov edi, dword [eax + 0xd6]
lea ecx, [edi + 0xc]
call fcn.0040f1c0
mov eax, dword [edi + 0xc]
add eax, 8
cmp esi, eax
je 0x435bd5
mov eax, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x44]
movzx eax, word [eax + ecx*2]
mov dword [ebp - 0x40], eax
nop
cmp dword [esi + 0xc], eax
lea ecx, [esi + 0xc]
jne 0x435bab
lea eax, [esi + 0x10]
push eax
push ecx
mov ecx, dword [0x44ee18]
lea eax, [ebp - 0x24c]
push eax
lea ecx, [ecx + 0x14]
call fcn.004339d0
mov eax, dword [ebp - 0x60]
add eax, dword [esi + 0x18]
mov dword [ebp - 0x60], eax
mov ecx, esi
call dword [0x43f318]
mov esi, eax
mov eax, dword [0x44ee18]
mov edi, dword [eax + 0xd6]
lea ecx, [edi + 0xc]
call fcn.0040f1c0
mov eax, dword [edi + 0xc]
add eax, 8
cmp esi, eax
mov eax, dword [ebp - 0x40]
jne 0x435b80
mov edi, dword [ebp - 0x44]
inc edi
mov dword [ebp - 0x44], edi
cmp edi, dword [ebp - 0x48]
jle 0x435b30
mov esi, dword [ebp - 0x60]
push esi
call dword [0x43f3c4]
mov esi, dword [0x44ee18]
add esp, 4
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x4c], eax
lea ecx, [esi + 0x14]
call fcn.0040f1c0
mov esi, dword [esi + 0x14]
cmp dword [esi + 0xc], 0
je 0x435c14
mov esi, dword [esi + 0x14]
jmp 0x435c17
add esi, 8
mov edi, dword [0x44ee18]
lea ecx, [edi + 0x14]
call fcn.0040f1c0
mov eax, dword [edi + 0x14]
add eax, 8
cmp esi, eax
je 0x435ca9
mov ecx, dword [0x44ee18]
mov edi, dword [esi + 0x18]
mov edx, dword [esi + 0x10]
push edi
mov eax, dword [ecx]
push dword [ebp - 0x4c]
mov dword [ebp - 0x40], edx
push edx
mov eax, dword [eax + 0x20]
call eax
mov ecx, dword [esi + 0xc]
sub esp, 8
movd xmm0, edi
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x444e34]
cvtps2pd xmm0, xmm0
movsd qword [esp], xmm0
push dword [ebp - 0x40]
push ecx
test eax, eax
je 0x438c97
push str.Uploading_____page___8d___16x_size___8.2f_KB______Successful__n
call fcn.00439510
add dword [ebp - 0x4c], edi
add esp, 0x14
mov ecx, esi
call dword [0x43f318]
mov edi, dword [0x44ee18]
mov esi, eax
lea ecx, [edi + 0x14]
call fcn.0040f1c0
mov eax, dword [edi + 0x14]
add eax, 8
cmp esi, eax
jne 0x435c33
lea eax, [ebp - 0x38]
push eax
call dword [0x43f1a0]
add esp, 4
test al, al
jne 0x435d92
lea eax, [ebp - 0x208]
push eax
lea ecx, [ebp - 0x38]
call dword [0x43f274]
mov ecx, eax
mov byte [ebp - 4], 0x23
call dword [0x43f290]
push eax
push str._nfile__s_does_not_exist_.._Creating_file_n
call fcn.00439510
add esp, 8
mov byte [ebp - 4], 0x22
lea ecx, [ebp - 0x208]
call dword [0x43f294]
push 1
push 0xffffffffffffffff
push ecx
mov ecx, esp
push 0x5c
call dword [0x43f254]
lea ecx, [ebp - 0x38]
call dword [0x43f1f0]
push eax
lea eax, [ebp - 0xf4]
push eax
lea ecx, [ebp - 0x38]
call dword [0x43f27c]
lea eax, [ebp - 0xf4]
mov byte [ebp - 4], 0x24
push eax
lea ecx, [ebp - 0x10c]
call dword [0x43f1a4]
lea eax, [ebp - 0xf4]
mov byte [ebp - 4], 0x25
push eax
lea ecx, [ebp - 0x10c]
call dword [0x43f1b0]
test al, al
jne 0x435d66
lea eax, [ebp - 0xf4]
push eax
lea ecx, [ebp - 0x10c]
call dword [0x43f1ac]
lea eax, [ebp - 0x38]
push eax
lea ecx, [ebp - 0xb8]
call dword [0x43f19c]
lea ecx, [ebp - 0x10c]
call dword [0x43f1a8]
lea ecx, [ebp - 0xf4]
mov byte [ebp - 4], 0x22
call dword [0x43f338]
push ecx
mov eax, esp
lea ecx, [ebp - 0xb8]
mov dword [eax], 2
call dword [0x43f210]
test al, al
je 0x438ca4
push str._nWriting_data_..._n
call fcn.00439510
mov edi, dword [ebp - 0x48]
add esp, 4
mov eax, dword [0x44ee18]
add eax, 0x14
push edi
push ecx
mov ecx, esp
push eax
call fcn.00432240
mov ecx, dword [0x44ee18]
mov eax, dword [ecx]
mov eax, dword [eax + 0x24]
call eax
test eax, eax
je 0x435f17
lea ecx, [ebp - 0x114]
call dword [0x43f1c8]
push 3
lea eax, [ebp - 0x20c]
mov byte [ebp - 4], 0x26
push eax
lea ecx, [ebp - 0x38]
call dword [0x43f244]
push eax
lea ecx, [ebp - 0x114]
call dword [0x43f2d4]
lea ecx, [ebp - 0x20c]
call dword [0x43f338]
lea eax, [ebp - 0x210]
push eax
lea ecx, [ebp - 0x114]
call dword [0x43f2c0]
mov ecx, dword [eax]
push 1
push 0xffffffffffffffff
push 0x4447a0
push dword [ecx + 4]
mov ecx, eax
mov byte [ebp - 4], 0x27
call dword [0x43f1f4]
push eax
call dword [0x43f188]
add esp, 0x14
mov byte [ebp - 4], 0x26
lea ecx, [ebp - 0x210]
mov esi, eax
call dword [0x43f338]
test esi, esi
jne 0x435e95
lea ecx, [ebp - 0xb8]
call dword [0x43f21c]
push ecx
lea eax, [ebp - 0x38]
mov ecx, esp
push eax
call dword [0x43f288]
push edi
call fcn.0042fa70
add esp, 8
jmp 0x435f07
lea ecx, [ebp - 0x110]
call dword [0x43f28c]
mov edi, dword [ebp - 0x60]
xor esi, esi
mov byte [ebp - 4], 0x28
test edi, edi
jle 0x435ed9
nop
mov eax, dword [ebp - 0x48]
lea ecx, [ebp - 0x110]
movzx eax, byte [eax + esi]
push eax
push esi
lea eax, [ebp - 0x2b0]
push eax
call dword [0x43f200]
mov ecx, eax
call dword [0x43f1fc]
inc esi
cmp esi, edi
jl 0x435eb0
lea eax, [ebp - 0x110]
push eax
lea ecx, [ebp - 0xb8]
call dword [0x43f198]
lea ecx, [ebp - 0xb8]
call dword [0x43f21c]
lea ecx, [ebp - 0x110]
call dword [0x43f294]
mov edi, dword [ebp - 0x48]
lea ecx, [ebp - 0x114]
mov byte [ebp - 4], 0x22
call dword [0x43f338]
lea ecx, [ebp - 0xd8]
call dword [0x43f1bc]
mov ecx, eax
call fcn.00439b20
divsd xmm0, qword [0x444e38]
sub esp, 8
movsd qword [esp], xmm0
push str._n_f_seconds_n
call fcn.00439510
add esp, 0xc
test edi, edi
je 0x435f55
push edi
call dword [0x43f3cc]
add esp, 4
lea eax, [ebp - 0x200]
push eax
lea ecx, [ebp - 0x38]
call dword [0x43f274]
mov ecx, eax
mov byte [ebp - 4], 0x29
call dword [0x43f290]
push eax
push str._nUploaded_data_is_dumped_on__s_n
call fcn.00439510
add esp, 8
lea ecx, [ebp - 0x200]
call dword [0x43f294]
lea ecx, [ebp - 0xb8]
mov byte [ebp - 4], 2
call dword [0x43f214]
mov edi, dword [ebp + 8]
mov esi, dword [ebp - 0x34]
cmp esi, edi
jl 0x435401
jmp 0x434ca5
mov ecx, 0x443ea4
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x435fd5
test dl, dl
je 0x435fd1
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x435fd5
add eax, 2
add ecx, 2
test dl, dl
jne 0x435fb5
xor eax, eax
jmp 0x435fda
sbb eax, eax
or eax, 1
test eax, eax
jne 0x43688e
lea eax, [edi - 1]
cmp dword [ebp - 0x34], eax
jge 0x4361ce
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x3c]
inc eax
mov dword [ebp - 0x34], eax
mov edi, eax
mov esi, dword [ecx + eax*4]
push esi
call fcn.00432a70
add esp, 4
test al, al
jne 0x4361ce
push esi
call fcn.00432dd0
add esp, 4
test al, al
je 0x438d0d
mov ecx, edi
cmp ecx, dword [ebp + 8]
jge 0x4361ce
mov eax, dword [ebp - 0x3c]
inc ecx
mov dword [ebp - 0x34], ecx
mov esi, dword [eax + ecx*4 - 4]
mov ecx, 0x443f54
mov eax, esi
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x436060
test dl, dl
je 0x43605c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x436060
add eax, 2
add ecx, 2
test dl, dl
jne 0x436040
xor eax, eax
jmp 0x436065
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4360c7
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x3c]
mov edx, dword [eax + ecx*4]
test edx, edx
je 0x43608b
mov ecx, edx
lea esi, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x436080
sub ecx, esi
jmp 0x43608d
xor ecx, ecx
push edx
push ecx
lea ecx, [ebp - 0x16c]
call dword [0x43f1f8]
push 0x10
push 0
lea ecx, [ebp - 0x16c]
mov byte [ebp - 4], 0x2a
call dword [0x43f270]
lea ecx, [ebp - 0x16c]
mov dword [ebp - 0x50], eax
mov byte [ebp - 4], 2
call dword [0x43f338]
jmp 0x4361c2
mov ecx, 0x443f58
mov eax, esi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4360f0
test dl, dl
je 0x4360ec
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4360f0
add eax, 2
add ecx, 2
test dl, dl
jne 0x4360d0
xor eax, eax
jmp 0x4360f5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x436105
mov byte [ebp - 0x75], 1
mov dword [ebp - 0x34], edi
jmp 0x4361c2
mov ecx, 0x443f5c
mov eax, esi
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x436130
test dl, dl
je 0x43612c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x436130
add eax, 2
add ecx, 2
test dl, dl
jne 0x436110
xor eax, eax
jmp 0x436135
sbb eax, eax
or eax, 1
test eax, eax
jne 0x436145
mov byte [ebp - 0x59], 1
mov dword [ebp - 0x34], edi
jmp 0x4361c2
mov ecx, 0x443f60
mov eax, esi
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x436170
test dl, dl
je 0x43616c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x436170
add eax, 2
add ecx, 2
test dl, dl
jne 0x436150
xor eax, eax
jmp 0x436175
sbb eax, eax
or eax, 1
test eax, eax
jne 0x436182
mov byte [ebp - 0x5a], 1
mov dword [ebp - 0x34], edi
jmp 0x4361c2
mov eax, str.__fn
mov cl, byte [esi]
cmp cl, byte [eax]
jne 0x4361a7
test cl, cl
je 0x4361a3
mov cl, byte [esi + 1]
cmp cl, byte [eax + 1]
jne 0x4361a7
add esi, 2
add eax, 2
test cl, cl
jne 0x436187
xor eax, eax
jmp 0x4361ac
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4361c2
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x3c]
push dword [eax + ecx*4]
lea ecx, [ebp - 0x38]
call dword [0x43f26c]
mov edi, dword [ebp + 8]
cmp dword [ebp - 0x34], edi
jl 0x435fe2
push str._nDOWNLOADING_...__n_n
call fcn.00439510
add esp, 4
lea ecx, [ebp - 0xd8]
call dword [0x43f1b8]
lea eax, [ebp - 0x38]
mov dword [ebp - 0xdc], 0
push eax
lea ecx, [ebp - 0x178]
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x120], 0
call dword [0x43f218]
lea eax, [ebp - 0x38]
mov byte [ebp - 4], 0x2b
push eax
call dword [0x43f1a0]
add esp, 4
test al, al
je 0x438e25
push 0
push 0x43f978
call dword [0x43f2a8]
add esp, 8
mov dword [ebp - 0xec], eax
push 3
lea eax, [ebp - 0x214]
mov byte [ebp - 4], 0x2d
push eax
lea ecx, [ebp - 0x38]
call dword [0x43f244]
push eax
lea ecx, [ebp - 0xec]
call dword [0x43f2d4]
lea ecx, [ebp - 0x214]
call dword [0x43f338]
lea ecx, [ebp - 0xc8]
call dword [0x43f28c]
push ecx
mov eax, esp
mov byte [ebp - 4], 0x2e
lea ecx, [ebp - 0x178]
mov dword [eax], 1
call dword [0x43f210]
test al, al
je 0x438df7
lea eax, [ebp - 0x21c]
push eax
lea ecx, [ebp - 0x178]
call dword [0x43f194]
push eax
lea ecx, [ebp - 0xc8]
call dword [0x43f264]
lea ecx, [ebp - 0x21c]
call dword [0x43f294]
lea ecx, [ebp - 0x178]
call dword [0x43f21c]
mov eax, dword [ebp - 0xc8]
mov edi, dword [eax + 4]
mov dword [ebp - 0x70], edi
test edi, edi
je 0x438d87
lea ecx, [ebp - 0xc8]
call dword [0x43f290]
mov dword [ebp - 0x44], eax
lea ecx, [ebp - 0xec]
lea eax, [ebp - 0x1ec]
push eax
call dword [0x43f2c0]
mov ecx, dword [eax]
push 1
push 0xffffffffffffffff
push 0x4447a0
push dword [ecx + 4]
mov ecx, eax
mov byte [ebp - 4], 0x30
call dword [0x43f1f4]
push eax
call dword [0x43f188]
add esp, 0x14
mov byte [ebp - 4], 0x2e
lea ecx, [ebp - 0x1ec]
mov esi, eax
call dword [0x43f338]
test esi, esi
jne 0x436369
lea eax, [ebp - 0x264]
push eax
push dword [ebp - 0x44]
call fcn.00430d30
mov eax, dword [ebp - 0x25c]
add esp, 8
mov edi, dword [ebp - 0x264]
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x70], edi
mov edx, dword [0x44ee18]
mov eax, dword [ebp - 0x50]
add eax, edi
mov ecx, dword [edx + 0x2c]
cmp eax, ecx
jbe 0x436388
mov edi, ecx
mov ecx, dword [ebp - 0x50]
sub edi, ecx
inc edi
mov dword [ebp - 0x70], edi
jmp 0x43638b
mov ecx, dword [ebp - 0x50]
mov eax, dword [ebp - 0x44]
mov esi, edi
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x40], edi
cmp byte [edi + eax - 1], 0xff
jne 0x4363af
nop dword [eax]
test esi, esi
jle 0x4363ac
dec esi
cmp byte [eax + esi - 1], 0xff
je 0x4363a0
mov dword [ebp - 0x40], esi
lea eax, [ebp - 0xdc]
push eax
push ecx
mov ecx, dword [edx + 0xd6]
call fcn.00418d20
mov ecx, dword [0x44ee18]
lea eax, [ebp - 0x7c]
push eax
mov eax, dword [ebp - 0x50]
dec eax
mov ecx, dword [ecx + 0xd6]
add eax, edi
push eax
call fcn.00418d20
mov edi, dword [ebp - 0x50]
lea eax, [ebp - 0x120]
mov ecx, dword [0x44ee18]
push eax
lea eax, [edi - 1]
mov ecx, dword [ecx + 0xd6]
add eax, esi
push eax
call fcn.00418d20
cmp byte [ebp - 0x5a], 0
je 0x436412
movzx eax, word [ebp - 0x120]
mov dword [ebp - 0x70], esi
mov dword [ebp - 0x7c], eax
movzx ecx, word [ebp - 0xdc]
movzx eax, word [ebp - 0x7c]
mov dword [ebp - 0x4c], ecx
cmp ecx, eax
ja 0x436489
nop dword [eax + eax]
lea eax, [ebp - 0x4c]
push eax
lea eax, [ebp - 0x250]
push eax
mov eax, dword [0x44ee18]
mov ecx, dword [eax + 0xd6]
add ecx, 0xc
call fcn.004336f0
mov esi, dword [eax]
mov eax, dword [0x44ee18]
mov edi, dword [eax + 0xd6]
lea ecx, [edi + 0xc]
call fcn.0040f1c0
mov eax, dword [edi + 0xc]
add eax, 8
cmp esi, eax
je 0x436477
cmp dword [esi + 0x20], 0
je 0x438d16
mov ecx, dword [ebp - 0x4c]
movzx eax, word [ebp - 0x7c]
inc ecx
mov dword [ebp - 0x4c], ecx
cmp ecx, eax
jle 0x436430
mov edi, dword [ebp - 0x50]
mov al, byte [ebp - 0x75]
test al, al
jne 0x4365c8
mov eax, dword [0x44ed50]
test eax, eax
jne 0x4365a3
mov ecx, dword [0x44ee18]
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
call eax
test eax, eax
je 0x438d51
mov esi, dword [ebp - 0x70]
movzx ecx, word [ebp - 0xdc]
movzx eax, word [ebp - 0x7c]
mov dword [ebp - 0x68], esi
mov dword [ebp - 0x4c], edi
mov dword [ebp - 0x48], ecx
cmp ecx, eax
ja 0x436678
mov dword [ebp - 0x54], ecx
nop dword [eax + eax]
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 0x254]
push eax
mov eax, dword [0x44ee18]
mov ecx, dword [eax + 0xd6]
add ecx, 0xc
call fcn.004336f0
mov esi, dword [eax]
mov eax, dword [0x44ee18]
mov edi, dword [eax + 0xd6]
lea ecx, [edi + 0xc]
call fcn.0040f1c0
mov eax, dword [edi + 0xc]
add eax, 8
cmp esi, eax
je 0x43665f
movzx eax, word [ebp - 0x7c]
mov edi, dword [esi + 0x18]
cmp dword [ebp - 0x54], eax
jne 0x4365f7
mov edi, dword [ebp - 0x68]
test edi, edi
jle 0x43665f
mov ecx, dword [0x44ee18]
movzx eax, byte [ebp - 0x5a]
mov esi, dword [ebp - 0x4c]
movd xmm0, edi
mov edx, dword [ecx]
cvtdq2ps xmm0, xmm0
push eax
push esi
mov eax, dword [edx + 0x48]
push edi
push dword [ebp - 0x60]
mulss xmm0, dword [0x444e34]
cvtps2pd xmm0, xmm0
movsd qword [ebp - 0x94], xmm0
call eax
movsd xmm0, qword [ebp - 0x94]
sub esp, 8
movsd qword [esp], xmm0
push esi
push dword [ebp - 0x48]
test eax, eax
je 0x438d63
push str.Downloading___page___8d___16x_size___8.2f_KB______Successful__n
call fcn.00439510
add esp, 0x14
add esi, edi
add dword [ebp - 0x60], edi
jmp 0x43665c
cmp eax, 1
jne 0x4364b6
mov ecx, dword [0x44ee18]
mov eax, dword [ecx + 0x54]
mov edx, dword [ecx]
shl eax, 0xa
push eax
push dword [ecx + 0x5c]
mov eax, dword [edx + 0x2c]
call eax
jmp 0x4364ae
cmp al, 1
jne 0x4364b6
mov ecx, dword [0x44ee18]
mov esi, dword [ebp - 0x70]
push esi
push edi
mov eax, dword [ecx]
mov eax, dword [eax + 0x2c]
call eax
test eax, eax
je 0x438d51
push 0x64
call dword [0x43f130]
jmp 0x4364b9
mov ecx, dword [0x44ee18]
movzx eax, byte [ebp - 0x5a]
mov esi, dword [ebp - 0x4c]
movd xmm0, edi
mov edx, dword [ecx]
cvtdq2ps xmm0, xmm0
push eax
push esi
mov eax, dword [edx + 0x48]
push edi
push dword [ebp - 0x60]
mulss xmm0, dword [0x444e34]
cvtps2pd xmm0, xmm0
movsd qword [ebp - 0x94], xmm0
call eax
movsd xmm0, qword [ebp - 0x94]
sub esp, 8
movsd qword [esp], xmm0
push esi
push dword [ebp - 0x48]
test eax, eax
je 0x438d63
push str.Downloading___page___8d___16x_size___8.2f_KB______Successful__n
call fcn.00439510
add dword [ebp - 0x60], edi
add esp, 0x14
add esi, edi
sub dword [ebp - 0x68], edi
mov dword [ebp - 0x4c], esi
mov ecx, dword [ebp - 0x54]
movzx eax, word [ebp - 0x7c]
inc ecx
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x54], ecx
cmp ecx, eax
jle 0x4364e0
mov edi, dword [ebp - 0x50]
lea ecx, [ebp - 0xd8]
call dword [0x43f1bc]
mov ecx, eax
call fcn.00439b20
divsd xmm0, qword [0x444e38]
sub esp, 8
movsd qword [esp], xmm0
push str._n_f_seconds_n
call fcn.00439510
add esp, 0xc
cmp byte [ebp - 0x59], 0
je 0x43686b
push str._nVERIFYING..._n_n
call fcn.00439510
add esp, 4
lea ecx, [ebp - 0xd8]
call dword [0x43f1b8]
cmp byte [ebp - 0x5a], 0
je 0x4366e3
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x70], eax
movzx eax, word [ebp - 0x120]
mov dword [ebp - 0x7c], eax
jmp 0x4366e6
mov eax, dword [ebp - 0x7c]
movzx ecx, word [ebp - 0xdc]
movzx eax, ax
mov dword [ebp - 0x4c], edi
mov dword [ebp - 0x48], ecx
cmp ecx, eax
ja 0x43683b
mov dword [ebp - 0x54], ecx
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 0x280]
push eax
mov eax, dword [0x44ee18]
mov ecx, dword [eax + 0xd6]
add ecx, 0xc
call fcn.004336f0
mov esi, dword [eax]
mov eax, dword [0x44ee18]
mov edi, dword [eax + 0xd6]
lea ecx, [edi + 0xc]
call fcn.0040f1c0
mov eax, dword [edi + 0xc]
add eax, 8
cmp esi, eax
je 0x436825
movzx eax, word [ebp - 0x7c]
mov edi, dword [esi + 0x18]
cmp dword [ebp - 0x54], eax
jne 0x4367c2
mov edx, dword [ebp - 0x70]
test edx, edx
jle 0x436825
mov ecx, dword [0x44ee18]
mov esi, dword [ebp - 0x4c]
movd xmm0, edx
cvtdq2ps xmm0, xmm0
mov eax, dword [ecx]
push esi
push edx
push dword [ebp - 0x44]
mulss xmm0, dword [0x444e34]
mov eax, dword [eax + 0x50]
cvtps2pd xmm0, xmm0
movsd qword [ebp - 0x94], xmm0
call eax
movsd xmm0, qword [ebp - 0x94]
sub esp, 8
movsd qword [esp], xmm0
push esi
push dword [ebp - 0x48]
test eax, eax
je 0x438d75
push str.Verifying_____page___8d___16x_size___8.2f_KB______Successful__n
call fcn.00439510
mov edx, dword [ebp - 0x70]
add esp, 0x14
add esi, edx
add dword [ebp - 0x44], edx
jmp 0x436822
mov ecx, dword [0x44ee18]
mov esi, dword [ebp - 0x4c]
movd xmm0, edi
cvtdq2ps xmm0, xmm0
mov eax, dword [ecx]
push esi
push edi
push dword [ebp - 0x44]
mulss xmm0, dword [0x444e34]
mov eax, dword [eax + 0x50]
cvtps2pd xmm0, xmm0
movsd qword [ebp - 0x94], xmm0
call eax
movsd xmm0, qword [ebp - 0x94]
sub esp, 8
movsd qword [esp], xmm0
push esi
push dword [ebp - 0x48]
test eax, eax
je 0x438d75
push str.Verifying_____page___8d___16x_size___8.2f_KB______Successful__n
call fcn.00439510
add dword [ebp - 0x44], edi
add esp, 0x14
add esi, edi
sub dword [ebp - 0x70], edi
mov dword [ebp - 0x4c], esi
mov ecx, dword [ebp - 0x54]
movzx eax, word [ebp - 0x7c]
inc ecx
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x54], ecx
cmp ecx, eax
jle 0x436701
lea ecx, [ebp - 0xd8]
call dword [0x43f1bc]
mov ecx, eax
call fcn.00439b20
divsd xmm0, qword [0x444e38]
sub esp, 8
movsd qword [esp], xmm0
push str._n_f_seconds_n
call fcn.00439510
add esp, 0xc
lea ecx, [ebp - 0xc8]
call dword [0x43f294]
lea ecx, [ebp - 0xec]
call dword [0x43f338]
lea ecx, [ebp - 0x178]
jmp 0x438a85
mov ecx, 0x443ea8
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4368b5
test dl, dl
je 0x4368b1
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4368b5
add eax, 2
add ecx, 2
test dl, dl
jne 0x436895
xor eax, eax
jmp 0x4368ba
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4369da
mov esi, dword [ebp - 0x34]
lea eax, [edi - 1]
cmp esi, eax
jge 0x438a95
mov eax, dword [ebp - 0x3c]
inc esi
mov dword [ebp - 0x34], esi
mov esi, dword [eax + esi*4]
push esi
call fcn.00432a70
add esp, 4
test al, al
jne 0x438a92
push esi
call fcn.00432dd0
add esp, 4
test al, al
je 0x439467
mov eax, dword [ebp - 0x34]
cmp eax, edi
jge 0x434ca5
mov edi, dword [ebp - 0x3c]
inc eax
mov esi, dword [ebp - 0x50]
mov ecx, 0x443f54
mov dword [ebp - 0x34], eax
mov eax, dword [edi + eax*4 - 4]
nop word [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x436940
test dl, dl
je 0x43693c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x436940
add eax, 2
add ecx, 2
test dl, dl
jne 0x436920
xor eax, eax
jmp 0x436945
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4369a1
mov eax, dword [ebp - 0x34]
mov edx, dword [edi + eax*4]
test edx, edx
je 0x43696b
mov ecx, edx
lea esi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x436960
sub ecx, esi
jmp 0x43696d
xor ecx, ecx
push edx
push ecx
lea ecx, [ebp - 0x170]
call dword [0x43f1f8]
push 0x10
push 0
lea ecx, [ebp - 0x170]
mov byte [ebp - 4], 0x31
call dword [0x43f270]
lea ecx, [ebp - 0x170]
mov byte [ebp - 4], 2
mov esi, eax
call dword [0x43f338]
mov ecx, dword [0x44ee18]
push esi
mov eax, dword [ecx]
mov eax, dword [eax + 0x54]
call eax
test eax, eax
je 0x4369ba
push str._nYour_code_is_running..._n
jmp 0x4369bf
push str._nrun_fails__n
call fcn.00439510
mov edi, dword [ebp + 8]
add esp, 4
mov esi, dword [ebp - 0x34]
cmp esi, edi
jl 0x4368c5
jmp 0x434ca5
mov ecx, 0x443eac
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x436a01
test dl, dl
je 0x4369fd
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x436a01
add eax, 2
add ecx, 2
test dl, dl
jne 0x4369e1
xor eax, eax
jmp 0x436a06
sbb eax, eax
or eax, 1
test eax, eax
jne 0x436b4b
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x3c]
inc eax
mov dword [ebp - 0x34], eax
mov esi, dword [ecx + eax*4]
mov ecx, dword [0x44ee18]
push esi
call fcn.0040cd20
mov eax, dword [0x44ee18]
push dword [eax + 0x40]
call fcn.004323d0
add esp, 4
test eax, eax
je 0x4394b9
mov ecx, dword [0x44ee18]
push esi
call fcn.0040cd20
mov eax, dword [0x44ee18]
mov ecx, dword [eax + 0xda]
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
call eax
test eax, eax
je 0x438eab
mov ecx, dword [0x44ee18]
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
test eax, eax
je 0x436ad4
push str._nDevice_may_be_read_protected__n
call fcn.00439510
mov ecx, dword [0x44ee18]
add esp, 4
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
test eax, eax
je 0x434b94
push str._nDisabling_read_protection_______Successful__n
call fcn.00439510
add esp, 4
push 0x5dc
call dword [0x43f130]
mov ecx, dword [0x44ee18]
call fcn.0040c720
test al, al
jne 0x434b82
push str._nReseting_device_______Successful__n
call fcn.00439510
add esp, 4
mov ecx, dword [0x44ee18]
mov eax, dword [ecx]
mov eax, dword [eax + 0x58]
call eax
test eax, eax
je 0x436b27
mov eax, dword [0x44ee18]
push ecx
mov ecx, esp
push dword [eax + 0xbe]
call fcn.0040f700
mov eax, dword [0x44ee18]
sub esp, 0x44
add eax, 0x40
mov ecx, esp
push eax
call fcn.0040b3a0
mov ecx, dword [0x44ee18]
mov ecx, dword [ecx + 0xd6]
call fcn.00418db0
mov ecx, dword [0x44ee18]
mov eax, dword [ecx]
call dword [eax + 0x60]
push str._nActivating_device____________Successful__n
call fcn.00439510
mov edi, dword [ebp + 8]
add esp, 4
mov esi, dword [ebp - 0x34]
cmp esi, edi
jge 0x434ca5
inc esi
mov dword [ebp - 0x34], esi
jmp 0x438a95
mov ecx, 0x443eb0
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x436b72
test dl, dl
je 0x436b6e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x436b72
add eax, 2
add ecx, 2
test dl, dl
jne 0x436b52
xor eax, eax
jmp 0x436b77
sbb eax, eax
or eax, 1
test eax, eax
jne 0x436f7e
mov esi, dword [ebp - 0x34]
lea eax, [edi - 1]
cmp esi, eax
jge 0x438a95
mov eax, dword [ebp - 0x3c]
inc esi
mov dword [ebp - 0x34], esi
mov edi, esi
mov esi, dword [eax + esi*4]
push esi
call fcn.00432a70
add esp, 4
test al, al
jne 0x438a8f
push esi
call fcn.00432dd0
add esp, 4
test al, al
je 0x438f53
mov ecx, edi
cmp ecx, dword [ebp + 8]
jge 0x434ca5
mov eax, dword [ebp - 0x3c]
inc ecx
mov dword [ebp - 0x34], ecx
mov esi, dword [eax + ecx*4 - 4]
mov ecx, str.__erp
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x436bf8
test dl, dl
je 0x436bf4
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x436bf8
add eax, 2
add ecx, 2
test dl, dl
jne 0x436bd8
xor eax, eax
jmp 0x436bfd
sbb eax, eax
or eax, 1
test eax, eax
jne 0x436c4e
mov ecx, dword [0x44ee18]
mov eax, dword [ecx]
mov eax, dword [eax + 0x10]
call eax
test eax, eax
je 0x438eb5
push str._nEnabling_read_protection________Successful__n
call fcn.00439510
add esp, 4
push 0x5dc
call dword [0x43f130]
xor esi, esi
mov ecx, dword [0x44ee18]
call fcn.0040c720
test al, al
je 0x436cc6
inc esi
cmp esi, 0xa
jl 0x436c30
jmp 0x436cc6
mov ecx, str.__drp
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x436c75
test dl, dl
je 0x436c71
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x436c75
add eax, 2
add ecx, 2
test dl, dl
jne 0x436c55
xor eax, eax
jmp 0x436c7a
sbb eax, eax
or eax, 1
test eax, eax
jne 0x436cdd
mov ecx, dword [0x44ee18]
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
test eax, eax
je 0x434b94
push str._nDisabling_read_protection_______Successful__n
call fcn.00439510
add esp, 4
push 0x5dc
call dword [0x43f130]
xor esi, esi
mov ecx, dword [0x44ee18]
call fcn.0040c720
test al, al
je 0x436cc6
inc esi
cmp esi, 0xa
jl 0x436cb1
push str._nReseting_device_______Successful__n
call fcn.00439510
mov esi, edi
add esp, 4
mov dword [ebp - 0x34], esi
jmp 0x436ee5
mov ecx, str.__ewp
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x436d04
test dl, dl
je 0x436d00
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x436d04
add eax, 2
add ecx, 2
test dl, dl
jne 0x436ce4
xor eax, eax
jmp 0x436d09
sbb eax, eax
or eax, 1
test eax, eax
jne 0x436ef5
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x3c]
mov esi, dword [ecx + eax*4]
push esi
call fcn.00432a70
add esp, 4
test al, al
jne 0x438a8f
push esi
call dword [0x43f3b8]
mov edi, eax
lea ecx, [edi + 1]
push ecx
call dword [0x43f3c4]
mov ecx, dword [ebp - 0x3c]
add esp, 8
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x34]
push dword [ecx + eax*4 + 4]
lea ecx, [ebp - 0x80]
call dword [0x43f26c]
push 1
push 0x444674
call dword [0x43f2a8]
add esp, 8
mov dword [ebp - 0x18c], eax
push 1
push 0
lea eax, [ebp - 0x18c]
mov byte [ebp - 4], 0x32
push eax
lea ecx, [ebp - 0x80]
call dword [0x43f2c4]
lea ecx, [ebp - 0x18c]
mov byte [ebp - 4], 2
mov esi, eax
call dword [0x43f338]
cmp esi, 0xffffffff
je 0x436e5c
push 1
push 0x444674
call dword [0x43f2a8]
add esp, 8
mov dword [ebp - 0x190], eax
push 1
push 0
lea eax, [ebp - 0x190]
mov byte [ebp - 4], 0x33
push eax
lea eax, [ebp - 0xc4]
push eax
lea ecx, [ebp - 0x80]
call dword [0x43f17c]
lea ecx, [ebp - 0x190]
mov byte [ebp - 4], 0x35
call dword [0x43f338]
lea ecx, [ebp - 0xc4]
call dword [0x43f330]
cmp eax, 2
jne 0x438ec7
push 0
lea ecx, [ebp - 0xc4]
call dword [0x43f32c]
mov esi, dword [0x43f270]
mov ecx, eax
push 0xa
push 0
call esi
push 1
lea ecx, [ebp - 0xc4]
mov dword [ebp - 0x40], eax
call dword [0x43f32c]
push 0xa
push 0
mov ecx, eax
call esi
mov esi, dword [ebp - 0x48]
mov edx, eax
mov eax, dword [ebp - 0x40]
cmp eax, edx
jg 0x436e48
mov ecx, esi
sub ecx, eax
nop
mov byte [eax + ecx], al
inc eax
cmp eax, edx
jle 0x436e40
inc dword [ebp - 0x34]
lea ecx, [ebp - 0xc4]
mov byte [ebp - 4], 2
call fcn.0040ac90
jmp 0x436e86
xor esi, esi
test edi, edi
jle 0x436e83
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x3c]
inc eax
mov dword [ebp - 0x34], eax
push dword [ecx + eax*4]
call dword [0x43f3b8]
mov ecx, dword [ebp - 0x48]
add esp, 4
mov byte [esi + ecx], al
inc esi
cmp esi, edi
jl 0x436e62
mov esi, dword [ebp - 0x48]
mov ecx, dword [0x44ee18]
push esi
push edi
mov eax, dword [ecx]
mov eax, dword [eax + 0x1c]
call eax
test eax, eax
je 0x438f2f
push str._nEnabling_write_protection__________Successful__n
call fcn.00439510
add esp, 4
push 0x5dc
call dword [0x43f130]
xor esi, esi
nop word [eax + eax]
mov ecx, dword [0x44ee18]
call fcn.0040c720
test al, al
je 0x436ed5
inc esi
cmp esi, 0xa
jl 0x436ec0
push str._nReseting_device_______Successful__n
call fcn.00439510
add esp, 4
mov esi, dword [ebp - 0x34]
mov edi, dword [ebp + 8]
cmp esi, edi
jl 0x436b82
jmp 0x434ca5
mov eax, str.__dwp
nop word [eax + eax]
mov cl, byte [esi]
cmp cl, byte [eax]
jne 0x436f20
test cl, cl
je 0x436f1c
mov cl, byte [esi + 1]
cmp cl, byte [eax + 1]
jne 0x436f20
add esi, 2
add eax, 2
test cl, cl
jne 0x436f00
xor eax, eax
jmp 0x436f25
sbb eax, eax
or eax, 1
test eax, eax
jne 0x436ee2
mov ecx, dword [0x44ee18]
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
call eax
test eax, eax
je 0x438f41
push str._nDisabling_write_protection_________Successful__n
call fcn.00439510
add esp, 4
push 0x5dc
call dword [0x43f130]
xor esi, esi
nop dword [eax + eax]
mov ecx, dword [0x44ee18]
call fcn.0040c720
test al, al
je 0x436cc6
inc esi
cmp esi, 0xa
jl 0x436f60
jmp 0x436cc6
mov ecx, 0x443eb4
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x436fa5
test dl, dl
je 0x436fa1
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x436fa5
add eax, 2
add ecx, 2
test dl, dl
jne 0x436f85
xor eax, eax
jmp 0x436faa
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4377ab
mov esi, dword [ebp - 0x34]
lea eax, [edi - 1]
cmp esi, eax
jge 0x438a95
mov eax, dword [ebp - 0x3c]
inc esi
mov dword [ebp - 0x34], esi
mov esi, dword [eax + esi*4]
push esi
call fcn.00432a70
add esp, 4
test al, al
jne 0x438a92
push esi
call fcn.00432dd0
add esp, 4
test al, al
je 0x4374f7
mov eax, dword [ebp - 0x34]
cmp eax, edi
jge 0x434ca5
mov ecx, dword [ebp - 0x3c]
inc eax
mov dword [ebp - 0x34], eax
mov esi, dword [ecx + eax*4 - 4]
mov ecx, str.__get
mov eax, esi
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x437030
test dl, dl
je 0x43702c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x437030
add eax, 2
add ecx, 2
test dl, dl
jne 0x437010
xor eax, eax
jmp 0x437035
sbb eax, eax
or eax, 1
test eax, eax
jne 0x437519
mov esi, dword [ebp - 0x34]
cmp esi, edi
jge 0x434ca5
mov edi, dword [ebp - 0x3c]
inc esi
mov dword [ebp - 0x34], esi
mov ecx, str.__fn
mov eax, dword [edi + esi*4 - 4]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x437078
test dl, dl
je 0x437074
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x437078
add eax, 2
add ecx, 2
test dl, dl
jne 0x437058
xor eax, eax
jmp 0x43707d
sbb eax, eax
or eax, 1
test eax, eax
jne 0x43708d
push dword [edi + esi*4]
lea ecx, [ebp - 0x38]
call dword [0x43f26c]
mov eax, dword [0x44ee18]
mov ecx, dword [eax + 0xda]
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
call eax
test eax, eax
je 0x438f6b
mov ecx, dword [0x44ee18]
mov eax, dword [ecx]
mov eax, dword [eax + 0x58]
call eax
test eax, eax
je 0x437507
push str._nGetting_Option_bytes________Successful__n
call fcn.00439510
add esp, 4
lea eax, [ebp - 0x38]
lea ecx, [ebp - 0x100]
push eax
call dword [0x43f218]
mov edi, dword [0x43f2a8]
push 0
push 0x43f978
mov byte [ebp - 4], 0x36
call edi
mov dword [ebp - 0x138], eax
push 4
push str..bin
mov byte [ebp - 4], 0x37
call edi
add esp, 0x10
mov dword [ebp - 0x194], eax
push 1
push 0
lea eax, [ebp - 0x194]
mov byte [ebp - 4], 0x38
push eax
lea ecx, [ebp - 0x38]
call dword [0x43f2c4]
lea ecx, [ebp - 0x194]
mov byte [ebp - 4], 0x37
mov esi, eax
call dword [0x43f338]
cmp esi, 0xffffffff
je 0x4371a3
push 1
push 0x444b38
call edi
add esp, 8
mov dword [ebp - 0x198], eax
push 1
push 0xffffffffffffffff
lea eax, [ebp - 0x198]
mov byte [ebp - 4], 0x39
push eax
lea ecx, [ebp - 0x38]
call dword [0x43f1ec]
lea ecx, [ebp - 0x198]
mov byte [ebp - 4], 0x37
mov esi, eax
call dword [0x43f338]
push esi
push 0
lea eax, [ebp - 0x1f4]
push eax
lea ecx, [ebp - 0x38]
call dword [0x43f1e8]
push eax
lea ecx, [ebp - 0x138]
call dword [0x43f2d4]
lea ecx, [ebp - 0x1f4]
call dword [0x43f338]
push ecx
mov eax, esp
lea ecx, [ebp - 0x100]
mov dword [eax], 2
call dword [0x43f210]
test al, al
je 0x4374a2
mov eax, dword [0x44ee18]
mov esi, dword [eax + 0xbe]
mov ecx, esi
call fcn.0040f250
mov esi, dword [esi]
cmp dword [esi + 0xc], 0
je 0x4371df
mov esi, dword [esi + 0x14]
jmp 0x4371e2
add esi, 8
mov eax, dword [0x44ee18]
mov edi, dword [eax + 0xbe]
mov ecx, edi
call fcn.0040f250
mov eax, dword [edi]
add eax, 8
cmp esi, eax
je 0x437473
mov eax, dword [0x44ee18]
push 0x10
mov eax, dword [eax + 0xb2]
mov dword [ebp - 0x40], eax
mov eax, dword [esi + 0x10]
push eax
mov dword [ebp - 0x54], eax
lea eax, [ebp - 0x1f8]
push eax
call dword [0x43f184]
mov edi, eax
push 0xffffffffffffffff
lea eax, [ebp - 0x134]
mov byte [ebp - 4], 0x3b
push 0x440824
push eax
call dword [0x43f2b8]
or dword [ebp - 0x98], 1
lea ecx, [ebp - 0x134]
add esp, 0x18
push edi
call dword [0x43f2bc]
lea ecx, [ebp - 0x1f8]
mov byte [ebp - 4], 0x3c
call dword [0x43f338]
mov eax, dword [ebp - 0x40]
cmp dword [ebp - 0x54], eax
je 0x4373c0
push 0x444b38
lea eax, [ebp - 0x138]
push eax
lea eax, [ebp - 0x1fc]
push eax
call fcn.00432340
add esp, 0xc
push eax
lea ecx, [ebp - 0x128]
mov byte [ebp - 4], 0x3e
call dword [0x43f288]
mov edi, dword [ebp - 0x98]
lea eax, [ebp - 0x134]
or edi, 2
lea ecx, [ebp - 0x128]
push eax
mov dword [ebp - 0x98], edi
call dword [0x43f2bc]
push str..bin
lea eax, [ebp - 0x128]
push eax
lea eax, [ebp - 0x19c]
push eax
call fcn.00432340
add esp, 0xc
and edi, 0xfffffffd
mov dword [ebp - 0x98], edi
lea ecx, [ebp - 0x128]
call dword [0x43f338]
lea ecx, [ebp - 0x1fc]
mov byte [ebp - 4], 0x41
call dword [0x43f338]
lea eax, [ebp - 0x19c]
push eax
lea ecx, [ebp - 0x1a4]
call dword [0x43f218]
push ecx
mov eax, esp
mov byte [ebp - 4], 0x42
lea ecx, [ebp - 0x1a4]
mov dword [eax], 2
call dword [0x43f210]
test al, al
je 0x4373a3
lea ecx, [ebp - 0x12c]
call dword [0x43f28c]
xor edi, edi
mov byte [ebp - 4], 0x43
cmp dword [esi + 0x14], edi
jle 0x437378
nop dword [eax + eax]
movzx eax, byte [edi + esi + 0x18]
lea ecx, [ebp - 0x12c]
push eax
push edi
lea eax, [ebp - 0x298]
push eax
call dword [0x43f200]
mov ecx, eax
call dword [0x43f1fc]
inc edi
cmp edi, dword [esi + 0x14]
jl 0x437350
lea eax, [ebp - 0x12c]
push eax
lea ecx, [ebp - 0x1a4]
call dword [0x43f198]
lea ecx, [ebp - 0x1a4]
call dword [0x43f21c]
lea ecx, [ebp - 0x12c]
call dword [0x43f294]
lea ecx, [ebp - 0x1a4]
call dword [0x43f214]
lea ecx, [ebp - 0x19c]
call dword [0x43f338]
jmp 0x437433
lea ecx, [ebp - 0x130]
call dword [0x43f28c]
xor edi, edi
mov byte [ebp - 4], 0x44
cmp dword [esi + 0x14], edi
jle 0x437408
nop word [eax + eax]
movzx eax, byte [edi + esi + 0x18]
lea ecx, [ebp - 0x130]
push eax
push edi
lea eax, [ebp - 0x2a0]
push eax
call dword [0x43f200]
mov ecx, eax
call dword [0x43f1fc]
inc edi
cmp edi, dword [esi + 0x14]
jl 0x4373e0
lea eax, [ebp - 0x130]
push eax
lea ecx, [ebp - 0x100]
call dword [0x43f198]
lea ecx, [ebp - 0x100]
call dword [0x43f21c]
lea ecx, [ebp - 0x130]
call dword [0x43f294]
and dword [ebp - 0x98], 0xfffffffe
lea ecx, [ebp - 0x134]
mov byte [ebp - 4], 0x37
call dword [0x43f338]
mov ecx, esi
call dword [0x43f318]
mov esi, eax
mov eax, dword [0x44ee18]
mov edi, dword [eax + 0xbe]
mov ecx, edi
call fcn.0040f250
mov eax, dword [edi]
add eax, 8
cmp esi, eax
jne 0x437201
lea eax, [ebp - 0x1a8]
push eax
lea ecx, [ebp - 0x38]
call dword [0x43f274]
mov ecx, eax
mov byte [ebp - 4], 0x45
call dword [0x43f290]
push eax
push str._nUploaded_data_is_dumped_on__s_n
call fcn.00439510
lea ecx, [ebp - 0x1a8]
jmp 0x4374cf
lea eax, [ebp - 0x1ac]
push eax
lea ecx, [ebp - 0x38]
call dword [0x43f274]
mov ecx, eax
mov byte [ebp - 4], 0x46
call dword [0x43f290]
push eax
push str._nOpen__s_failed_n
call fcn.00439510
lea ecx, [ebp - 0x1ac]
add esp, 8
call dword [0x43f294]
lea ecx, [ebp - 0x138]
call dword [0x43f338]
lea ecx, [ebp - 0x100]
mov byte [ebp - 4], 2
call dword [0x43f214]
mov edi, dword [ebp + 8]
mov esi, dword [ebp - 0x34]
cmp esi, edi
jl 0x436fb5
jmp 0x434ca5
push str._nGetting_Option_bytes_________Failed__n
call fcn.00439510
mov edi, dword [ebp + 8]
add esp, 4
jmp 0x4374fa
mov eax, str.__set
nop
mov cl, byte [esi]
cmp cl, byte [eax]
jne 0x437540
test cl, cl
je 0x43753c
mov cl, byte [esi + 1]
cmp cl, byte [eax + 1]
jne 0x437540
add esi, 2
add eax, 2
test cl, cl
jne 0x437520
xor eax, eax
jmp 0x437545
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4374f7
mov esi, dword [ebp - 0x34]
cmp esi, edi
jge 0x434ca5
mov eax, dword [ebp - 0x3c]
inc esi
mov dword [ebp - 0x34], esi
mov ecx, str.__fn
mov eax, dword [eax + esi*4 - 4]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x437584
test dl, dl
je 0x437580
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x437584
add eax, 2
add ecx, 2
test dl, dl
jne 0x437564
xor eax, eax
jmp 0x437589
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4374fa
mov eax, dword [ebp - 0x3c]
lea ecx, [ebp - 0x38]
push dword [eax + esi*4]
call dword [0x43f26c]
lea eax, [ebp - 0x38]
push eax
lea ecx, [ebp - 0x180]
call dword [0x43f218]
lea eax, [ebp - 0x38]
mov byte [ebp - 4], 0x47
push eax
call dword [0x43f1a0]
add esp, 4
test al, al
je 0x439033
lea ecx, [ebp - 0x84]
call dword [0x43f28c]
push ecx
mov eax, esp
mov byte [ebp - 4], 0x49
lea ecx, [ebp - 0x180]
mov dword [eax], 1
call dword [0x43f210]
test al, al
je 0x439011
lea eax, [ebp - 0x1b0]
push eax
lea ecx, [ebp - 0x180]
call dword [0x43f194]
push eax
lea ecx, [ebp - 0x84]
call dword [0x43f264]
lea ecx, [ebp - 0x1b0]
call dword [0x43f294]
lea ecx, [ebp - 0x180]
call dword [0x43f21c]
mov eax, dword [ebp - 0x84]
mov eax, dword [eax + 4]
mov dword [ebp - 0x40], eax
test eax, eax
je 0x438fa1
lea ecx, [ebp - 0x84]
call dword [0x43f290]
mov ecx, dword [0x44ee18]
mov dword [ebp - 0x4c], eax
mov ecx, dword [ecx + 0xda]
mov edx, dword [ecx]
mov edx, dword [edx + 0x30]
call edx
test eax, eax
je 0x438f8f
mov ecx, dword [0x44ee18]
mov eax, dword [ecx]
mov eax, dword [eax + 0x58]
call eax
test eax, eax
je 0x437787
mov eax, dword [0x44ee18]
mov esi, dword [eax + 0xbe]
mov ecx, esi
call fcn.0040f250
mov esi, dword [esi]
cmp dword [esi + 0xc], 0
je 0x4376a0
mov esi, dword [esi + 0x14]
jmp 0x4376a3
add esi, 8
mov eax, dword [0x44ee18]
mov edi, dword [eax + 0xbe]
mov ecx, edi
call fcn.0040f250
mov eax, dword [edi]
add eax, 8
cmp esi, eax
je 0x43772b
mov eax, dword [0x44ee18]
mov ecx, dword [esi + 0x10]
cmp ecx, dword [eax + 0xb2]
jne 0x4376f7
mov eax, dword [esi + 0x14]
lea ecx, [esi + 0x18]
mov edi, dword [ebp - 0x40]
cmp edi, eax
jl 0x43771e
push eax
push dword [ebp - 0x4c]
push ecx
call fcn.0043a372
mov eax, dword [esi + 0x14]
add esp, 0xc
sub edi, eax
add dword [ebp - 0x4c], eax
mov dword [ebp - 0x40], edi
mov ecx, esi
call dword [0x43f318]
mov esi, eax
mov eax, dword [0x44ee18]
mov edi, dword [eax + 0xbe]
mov ecx, edi
call fcn.0040f250
mov eax, dword [edi]
add eax, 8
cmp esi, eax
jne 0x4376c2
jmp 0x43772b
push edi
push dword [ebp - 0x4c]
push ecx
call fcn.0043a372
add esp, 0xc
mov ecx, dword [0x44ee18]
push 1
mov eax, dword [ecx]
push dword [ecx + 0xbe]
mov eax, dword [eax + 0x5c]
call eax
test eax, eax
je 0x438f7d
push str._nSetting_Option_bytes_data________Successful__n
call fcn.00439510
add esp, 4
push 0x5dc
call dword [0x43f130]
xor esi, esi
mov ecx, dword [0x44ee18]
call fcn.0040c720
test al, al
je 0x437777
inc esi
cmp esi, 0xa
jl 0x437762
push str._nResetting_device_________Successful__n
call fcn.00439510
mov esi, dword [ebp - 0x34]
add esp, 4
lea ecx, [ebp - 0x84]
call dword [0x43f294]
lea ecx, [ebp - 0x180]
mov byte [ebp - 4], 2
call dword [0x43f214]
mov edi, dword [ebp + 8]
jmp 0x4374fa
mov ecx, str._otp
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4377d2
test dl, dl
je 0x4377ce
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4377d2
add eax, 2
add ecx, 2
test dl, dl
jne 0x4377b2
xor eax, eax
jmp 0x4377d7
sbb eax, eax
or eax, 1
test eax, eax
jne 0x438201
mov esi, dword [ebp - 0x34]
lea eax, [edi - 1]
cmp esi, eax
jge 0x438a95
mov eax, dword [ebp - 0x3c]
inc esi
mov dword [ebp - 0x34], esi
mov esi, dword [eax + esi*4]
push esi
call fcn.00432a70
add esp, 4
test al, al
jne 0x438a92
push esi
call fcn.00432dd0
add esp, 4
test al, al
je 0x4381f1
mov eax, dword [ebp - 0x34]
cmp eax, edi
jge 0x434ca5
mov ecx, dword [ebp - 0x3c]
inc eax
mov dword [ebp - 0x34], eax
mov esi, dword [ecx + eax*4 - 4]
mov ecx, str.__get
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x437856
test dl, dl
je 0x437852
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x437856
add eax, 2
add ecx, 2
test dl, dl
jne 0x437836
xor eax, eax
jmp 0x43785b
sbb eax, eax
or eax, 1
test eax, eax
jne 0x437d86
mov esi, dword [ebp - 0x34]
cmp esi, edi
jge 0x434ca5
mov edi, dword [ebp - 0x3c]
inc esi
mov dword [ebp - 0x34], esi
mov ecx, str.__fn
mov eax, dword [edi + esi*4 - 4]
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4378a0
test dl, dl
je 0x43789c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4378a0
add eax, 2
add ecx, 2
test dl, dl
jne 0x437880
xor eax, eax
jmp 0x4378a5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4378b5
push dword [edi + esi*4]
lea ecx, [ebp - 0x38]
call dword [0x43f26c]
mov ecx, dword [0x44ee18]
mov eax, dword [ecx]
mov eax, dword [eax + 0x68]
call eax
test eax, eax
je 0x438f6b
push str._nOTP_DATA_GETTING_...__n_n
call fcn.00439510
add esp, 4
lea eax, [ebp - 0x38]
lea ecx, [ebp - 0xa0]
push eax
call dword [0x43f218]
lea ecx, [ebp - 0xd8]
mov byte [ebp - 4], 0x4b
call dword [0x43f1b8]
mov eax, dword [0x44ee18]
mov dword [ebp - 0x4c], 0
mov esi, dword [eax + 0xda]
lea ecx, [esi + 0x2c]
call fcn.00433660
mov esi, dword [esi + 0x2c]
cmp dword [esi + 0xc], 0
je 0x43791f
mov esi, dword [esi + 0x14]
jmp 0x437922
add esi, 8
mov eax, dword [0x44ee18]
mov edi, dword [eax + 0xda]
lea ecx, [edi + 0x2c]
call fcn.00433660
mov eax, dword [edi + 0x2c]
add eax, 8
cmp esi, eax
je 0x437983
movq xmm0, qword [esi + 0x10]
mov ecx, esi
mov eax, dword [ebp - 0x4c]
movq qword [ebp - 0x270], xmm0
add eax, dword [ebp - 0x26c]
mov dword [ebp - 0x4c], eax
call dword [0x43f318]
mov esi, eax
mov eax, dword [0x44ee18]
mov edi, dword [eax + 0xda]
lea ecx, [edi + 0x2c]
call fcn.00433660
mov eax, dword [edi + 0x2c]
add eax, 8
cmp esi, eax
jne 0x437943
push dword [ebp - 0x4c]
call dword [0x43f3c4]
mov ecx, dword [0x44ee18]
add esp, 4
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x54], eax
mov esi, dword [ecx + 0xda]
lea ecx, [esi + 0x30]
call fcn.00424230
mov esi, dword [esi + 0x30]
cmp dword [esi + 0xc], 0
je 0x4379b7
mov esi, dword [esi + 0x14]
jmp 0x4379ba
add esi, 8
mov eax, dword [0x44ee18]
mov edi, dword [eax + 0xda]
lea ecx, [edi + 0x30]
call fcn.00424230
mov eax, dword [edi + 0x30]
add eax, 8
cmp esi, eax
je 0x437ac2
nop dword [eax + eax]
lea eax, [esi + 0x10]
push eax
lea ecx, [ebp - 0x244]
call fcn.0041ae60
mov eax, dword [ebp - 0x224]
mov edi, eax
mov edx, dword [ebp - 0x228]
sub edi, edx
mov ecx, dword [0x44ee18]
inc edi
mov dword [ebp - 0x40], eax
push edi
push dword [ebp - 0x54]
mov eax, dword [ecx]
movd xmm0, edi
cvtdq2ps xmm0, xmm0
push edx
mov eax, dword [eax + 0x20]
mov byte [ebp - 4], 0x4c
mov dword [ebp - 0x48], edx
mulss xmm0, dword [0x444e34]
cvtps2pd xmm0, xmm0
movsd qword [ebp - 0x94], xmm0
call eax
movsd xmm0, qword [ebp - 0x94]
sub esp, 8
movsd qword [esp], xmm0
push dword [ebp - 0x40]
push dword [ebp - 0x48]
test eax, eax
je 0x4390b9
push str.Getting_OTP_data_______16x___16x_size___8.2f_KB______Successful__n
call fcn.00439510
add dword [ebp - 0x54], edi
lea ecx, [ebp - 0x220]
add esp, 0x14
mov byte [ebp - 4], 0x4b
call fcn.004322b0
lea ecx, [ebp - 0x234]
call dword [0x43f338]
lea ecx, [ebp - 0x240]
call dword [0x43f338]
lea ecx, [ebp - 0x244]
call dword [0x43f338]
mov ecx, esi
call dword [0x43f318]
mov esi, eax
mov eax, dword [0x44ee18]
mov edi, dword [eax + 0xda]
lea ecx, [edi + 0x30]
call fcn.00424230
mov eax, dword [edi + 0x30]
add eax, 8
cmp esi, eax
jne 0x4379e0
lea eax, [ebp - 0x38]
push eax
call dword [0x43f1a0]
add esp, 4
test al, al
jne 0x437bab
lea eax, [ebp - 0x1b4]
push eax
lea ecx, [ebp - 0x38]
call dword [0x43f274]
mov ecx, eax
mov byte [ebp - 4], 0x4d
call dword [0x43f290]
push eax
push str._nfile__s_does_not_exist_.._Creating_file_n
call fcn.00439510
add esp, 8
mov byte [ebp - 4], 0x4b
lea ecx, [ebp - 0x1b4]
call dword [0x43f294]
push 1
push 0xffffffffffffffff
push ecx
mov ecx, esp
push 0x5c
call dword [0x43f254]
lea ecx, [ebp - 0x38]
call dword [0x43f1f0]
push eax
lea eax, [ebp - 0xe0]
push eax
lea ecx, [ebp - 0x38]
call dword [0x43f27c]
lea eax, [ebp - 0xe0]
mov byte [ebp - 4], 0x4e
push eax
lea ecx, [ebp - 0x13c]
call dword [0x43f1a4]
lea eax, [ebp - 0xe0]
mov byte [ebp - 4], 0x4f
push eax
lea ecx, [ebp - 0x13c]
call dword [0x43f1b0]
test al, al
jne 0x437b7f
lea eax, [ebp - 0xe0]
push eax
lea ecx, [ebp - 0x13c]
call dword [0x43f1ac]
lea eax, [ebp - 0x38]
push eax
lea ecx, [ebp - 0xa0]
call dword [0x43f19c]
lea ecx, [ebp - 0x13c]
call dword [0x43f1a8]
lea ecx, [ebp - 0xe0]
mov byte [ebp - 4], 0x4b
call dword [0x43f338]
push ecx
mov eax, esp
lea ecx, [ebp - 0xa0]
mov dword [eax], 2
call dword [0x43f210]
test al, al
je 0x439123
push str._nWriting_data_..._n
call fcn.00439510
add esp, 4
lea ecx, [ebp - 0x124]
call dword [0x43f1c8]
push 3
lea eax, [ebp - 0x1b8]
mov byte [ebp - 4], 0x50
push eax
lea ecx, [ebp - 0x38]
call dword [0x43f244]
push eax
lea ecx, [ebp - 0x124]
call dword [0x43f2d4]
lea ecx, [ebp - 0x1b8]
call dword [0x43f338]
lea eax, [ebp - 0x1bc]
push eax
lea ecx, [ebp - 0x124]
call dword [0x43f2c0]
mov ecx, dword [eax]
push 1
push 0xffffffffffffffff
push 0x4447a0
push dword [ecx + 4]
mov ecx, eax
mov byte [ebp - 4], 0x51
call dword [0x43f1f4]
push eax
call dword [0x43f188]
add esp, 0x14
mov byte [ebp - 4], 0x50
lea ecx, [ebp - 0x1bc]
mov esi, eax
call dword [0x43f338]
test esi, esi
jne 0x437c86
lea ecx, [ebp - 0xa0]
call dword [0x43f21c]
push ecx
lea eax, [ebp - 0x38]
mov ecx, esp
push eax
call dword [0x43f288]
push dword [ebp - 0x68]
call fcn.0042fa70
add esp, 8
jmp 0x437cf4
lea ecx, [ebp - 0x140]
call dword [0x43f28c]
mov edi, dword [ebp - 0x4c]
xor esi, esi
mov byte [ebp - 4], 0x52
test edi, edi
jle 0x437cc9
nop
mov eax, dword [ebp - 0x68]
lea ecx, [ebp - 0x140]
movzx eax, byte [esi + eax]
push eax
push esi
lea eax, [ebp - 0x2a8]
push eax
call dword [0x43f200]
mov ecx, eax
call dword [0x43f1fc]
inc esi
cmp esi, edi
jl 0x437ca0
lea eax, [ebp - 0x140]
push eax
lea ecx, [ebp - 0xa0]
call dword [0x43f198]
lea ecx, [ebp - 0xa0]
call dword [0x43f21c]
lea ecx, [ebp - 0x140]
call dword [0x43f294]
lea ecx, [ebp - 0x124]
mov byte [ebp - 4], 0x4b
call dword [0x43f338]
lea ecx, [ebp - 0xd8]
call dword [0x43f1bc]
mov ecx, eax
call fcn.00439b20
divsd xmm0, qword [0x444e38]
sub esp, 8
movsd qword [esp], xmm0
push str._n_f_seconds_n
call fcn.00439510
mov eax, dword [ebp - 0x68]
add esp, 0xc
test eax, eax
je 0x437d45
push eax
call dword [0x43f3cc]
add esp, 4
lea eax, [ebp - 0x1c0]
push eax
lea ecx, [ebp - 0x38]
call dword [0x43f274]
mov ecx, eax
mov byte [ebp - 4], 0x53
call dword [0x43f290]
push eax
push str._nGetted_OTP_data_is_dumped_on__s_n
call fcn.00439510
add esp, 8
lea ecx, [ebp - 0x1c0]
call dword [0x43f294]
lea ecx, [ebp - 0xa0]
jmp 0x4381e4
mov eax, str.__set
nop dword [eax + eax]
mov cl, byte [esi]
cmp cl, byte [eax]
jne 0x437db0
test cl, cl
je 0x437dac
mov cl, byte [esi + 1]
cmp cl, byte [eax + 1]
jne 0x437db0
add esi, 2
add eax, 2
test cl, cl
jne 0x437d90
xor eax, eax
jmp 0x437db5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4381f1
mov esi, dword [ebp - 0x34]
cmp esi, edi
jge 0x434ca5
mov edi, dword [ebp - 0x3c]
inc esi
mov dword [ebp - 0x34], esi
mov ecx, 0x443f54
mov eax, dword [edi + esi*4 - 4]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x437df8
test dl, dl
je 0x437df4
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x437df8
add eax, 2
add ecx, 2
test dl, dl
jne 0x437dd8
xor eax, eax
jmp 0x437dfd
sbb eax, eax
or eax, 1
mov edx, dword [edi + esi*4]
test eax, eax
jne 0x4392bd
test edx, edx
je 0x437e1f
mov ecx, edx
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x437e11
sub ecx, esi
mov esi, dword [ebp - 0x34]
jmp 0x437e21
xor ecx, ecx
push edx
push ecx
lea ecx, [ebp - 0x14c]
call dword [0x43f1f8]
push 0x10
push 0
lea ecx, [ebp - 0x14c]
mov byte [ebp - 4], 0x54
call dword [0x43f270]
lea ecx, [ebp - 0x14c]
mov dword [ebp - 0x50], eax
mov byte [ebp - 4], 2
call dword [0x43f338]
cmp esi, dword [ebp + 8]
jge 0x434ca5
mov eax, dword [edi + esi*4 + 4]
add esi, 2
mov dword [ebp - 0x34], esi
mov ecx, str.__fn
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x437e90
test dl, dl
je 0x437e8c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x437e90
add eax, 2
add ecx, 2
test dl, dl
jne 0x437e70
xor eax, eax
jmp 0x437e95
sbb eax, eax
or eax, 1
test eax, eax
jne 0x437ea5
push dword [edi + esi*4]
lea ecx, [ebp - 0x38]
call dword [0x43f26c]
lea eax, [ebp - 0x38]
push eax
lea ecx, [ebp - 0x188]
call dword [0x43f218]
lea eax, [ebp - 0x38]
mov byte [ebp - 4], 0x55
push eax
call dword [0x43f1a0]
add esp, 4
test al, al
je 0x439237
push 0
push 0x43f978
call dword [0x43f2a8]
add esp, 8
mov dword [ebp - 0xf0], eax
push 3
lea eax, [ebp - 0x1c4]
mov byte [ebp - 4], 0x57
push eax
lea ecx, [ebp - 0x38]
call dword [0x43f244]
push eax
lea ecx, [ebp - 0xf0]
call dword [0x43f2d4]
lea ecx, [ebp - 0x1c4]
call dword [0x43f338]
lea ecx, [ebp - 0x88]
call dword [0x43f28c]
push ecx
mov eax, esp
mov byte [ebp - 4], 0x58
lea ecx, [ebp - 0x188]
mov dword [eax], 1
call dword [0x43f210]
test al, al
je 0x439209
lea eax, [ebp - 0x1c8]
push eax
lea ecx, [ebp - 0x188]
call dword [0x43f194]
push eax
lea ecx, [ebp - 0x88]
call dword [0x43f264]
lea ecx, [ebp - 0x1c8]
call dword [0x43f294]
lea ecx, [ebp - 0x188]
call dword [0x43f21c]
mov eax, dword [ebp - 0x88]
mov eax, dword [eax + 4]
mov dword [ebp - 0x40], eax
test eax, eax
je 0x439199
lea ecx, [ebp - 0x88]
call dword [0x43f290]
mov edi, eax
lea ecx, [ebp - 0xf0]
lea eax, [ebp - 0x1cc]
mov dword [ebp - 0x54], edi
push eax
call dword [0x43f2c0]
mov ecx, dword [eax]
push 1
push 0xffffffffffffffff
push 0x4447a0
push dword [ecx + 4]
mov ecx, eax
mov byte [ebp - 4], 0x5a
call dword [0x43f1f4]
push eax
call dword [0x43f188]
add esp, 0x14
mov byte [ebp - 4], 0x58
lea ecx, [ebp - 0x1cc]
mov esi, eax
call dword [0x43f338]
test esi, esi
jne 0x43800c
lea eax, [ebp - 0x27c]
push eax
push edi
call fcn.00430d30
mov eax, dword [ebp - 0x274]
add esp, 8
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0x27c]
mov dword [ebp - 0x40], eax
mov eax, dword [0x44ee18]
mov ecx, dword [eax + 0xda]
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
call eax
test eax, eax
je 0x4380ee
mov eax, dword [0x44ee18]
mov esi, dword [eax + 0xda]
lea ecx, [esi + 0x30]
call fcn.00424230
mov esi, dword [esi + 0x30]
cmp dword [esi + 0xc], 0
je 0x438047
mov esi, dword [esi + 0x14]
jmp 0x43804a
add esi, 8
mov eax, dword [0x44ee18]
mov edi, dword [eax + 0xda]
lea ecx, [edi + 0x30]
call fcn.00424230
mov eax, dword [edi + 0x30]
add eax, 8
cmp esi, eax
je 0x4380ee
nop dword [eax + eax]
lea eax, [esi + 0x10]
push eax
lea ecx, [ebp - 0x244]
call fcn.0041ae60
mov edi, dword [ebp - 0x50]
cmp edi, dword [ebp - 0x228]
jb 0x438098
mov eax, dword [ebp - 0x224]
cmp edi, eax
jbe 0x438100
lea ecx, [ebp - 0x220]
call fcn.004322b0
lea ecx, [ebp - 0x234]
call dword [0x43f338]
lea ecx, [ebp - 0x240]
call dword [0x43f338]
lea ecx, [ebp - 0x244]
call dword [0x43f338]
mov ecx, esi
call dword [0x43f318]
mov esi, eax
mov eax, dword [0x44ee18]
mov edi, dword [eax + 0xda]
lea ecx, [edi + 0x30]
call fcn.00424230
mov eax, dword [edi + 0x30]
add eax, 8
cmp esi, eax
jne 0x438070
push str._nPlease_check_the_start_address_of_OTP_set__n
call fcn.00439510
add esp, 4
jmp 0x4391cd
sub eax, edi
lea ecx, [ebp - 0x220]
lea esi, [eax + 1]
cmp dword [ebp - 0x40], esi
cmovbe esi, dword [ebp - 0x40]
call fcn.004322b0
lea ecx, [ebp - 0x234]
call dword [0x43f338]
lea ecx, [ebp - 0x240]
call dword [0x43f338]
lea ecx, [ebp - 0x244]
call dword [0x43f338]
lea ecx, [ebp - 0xd8]
call dword [0x43f1b8]
mov ecx, dword [0x44ee18]
push edi
mov edi, dword [ebp - 0x54]
push esi
mov eax, dword [ecx]
push edi
mov eax, dword [eax + 0x4c]
call eax
test eax, eax
je 0x439187
push str.Setting_OTP_data__Successful__n
call fcn.00439510
add esp, 4
lea ecx, [ebp - 0xd8]
call dword [0x43f1bc]
mov ecx, eax
call fcn.00439b20
divsd xmm0, qword [0x444e38]
sub esp, 8
movsd qword [esp], xmm0
push str._n_f_seconds_n
call fcn.00439510
mov ecx, dword [0x44ee18]
add esp, 0xc
push dword [ebp - 0x50]
mov eax, dword [ecx]
push esi
push edi
mov eax, dword [eax + 0x50]
call eax
test eax, eax
je 0x439175
push str.Verify_OTP_data__Successful__n
call fcn.00439510
add esp, 4
lea ecx, [ebp - 0x88]
call dword [0x43f294]
lea ecx, [ebp - 0xf0]
call dword [0x43f338]
lea ecx, [ebp - 0x188]
mov byte [ebp - 4], 2
call dword [0x43f214]
mov edi, dword [ebp + 8]
mov esi, dword [ebp - 0x34]
cmp esi, edi
jl 0x4377e2
jmp 0x434ca5
mov ecx, str._read
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x438228
test dl, dl
je 0x438224
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x438228
add eax, 2
add ecx, 2
test dl, dl
jne 0x438208
xor eax, eax
jmp 0x43822d
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4386de
mov ecx, dword [ebp - 0x34]
nop dword [eax + eax]
lea eax, [edi - 1]
cmp ecx, eax
jge 0x4383bf
mov eax, dword [ebp - 0x3c]
inc ecx
mov dword [ebp - 0x34], ecx
mov esi, dword [eax + ecx*4]
push esi
call fcn.00432a70
add esp, 4
test al, al
jne 0x4383bf
push esi
call fcn.00432dd0
add esp, 4
test al, al
je 0x439467
mov eax, dword [ebp - 0x34]
cmp eax, edi
jge 0x4383bf
mov ecx, dword [ebp - 0x3c]
inc eax
mov dword [ebp - 0x34], eax
mov esi, dword [ecx + eax*4 - 4]
mov ecx, 0x443f54
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4382b4
test dl, dl
je 0x4382b0
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4382b4
add eax, 2
add ecx, 2
test dl, dl
jne 0x438294
xor eax, eax
jmp 0x4382b9
sbb eax, eax
or eax, 1
test eax, eax
jne 0x43831d
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ecx + eax*4]
test edx, edx
je 0x4382de
mov ecx, edx
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4382d3
sub ecx, esi
jmp 0x4382e0
xor ecx, ecx
push edx
push ecx
lea ecx, [ebp - 0x150]
call dword [0x43f1f8]
push 0x10
push 0
lea ecx, [ebp - 0x150]
mov byte [ebp - 4], 0x5b
call dword [0x43f270]
lea ecx, [ebp - 0x150]
mov dword [ebp - 0xe8], eax
mov byte [ebp - 4], 2
call dword [0x43f338]
jmp 0x4383b1
mov ecx, str.__fn
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x438344
test dl, dl
je 0x438340
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x438344
add eax, 2
add ecx, 2
test dl, dl
jne 0x438324
xor eax, eax
jmp 0x438349
sbb eax, eax
or eax, 1
test eax, eax
jne 0x438364
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x3c]
push dword [ecx + eax*4]
lea ecx, [ebp - 0x38]
call dword [0x43f26c]
jmp 0x4383b1
mov eax, str.__len
nop dword [eax]
mov cl, byte [esi]
cmp cl, byte [eax]
jne 0x438390
test cl, cl
je 0x43838c
mov cl, byte [esi + 1]
cmp cl, byte [eax + 1]
jne 0x438390
add esi, 2
add eax, 2
test cl, cl
jne 0x438370
xor eax, eax
jmp 0x438395
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4383b4
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x3c]
push dword [ecx + eax*4]
call dword [0x43f3b8]
add esp, 4
mov dword [ebp - 0xb0], eax
mov edi, dword [ebp + 8]
mov ecx, dword [ebp - 0x34]
cmp ecx, edi
jl 0x438240
push str._nDATA_READING_...__n_n
call fcn.00439510
add esp, 4
lea ecx, [ebp - 0xd8]
call dword [0x43f1b8]
lea eax, [ebp - 0x38]
push eax
lea ecx, [ebp - 0xa8]
call dword [0x43f218]
mov esi, dword [ebp - 0xb0]
push esi
mov byte [ebp - 4], 0x5c
call dword [0x43f3c4]
mov ecx, dword [0x44ee18]
add esp, 4
mov edi, eax
mov edx, dword [ecx]
push esi
push edi
push dword [ebp - 0xe8]
mov edx, dword [edx + 0x20]
call edx
test eax, eax
je 0x4392c3
push str.Reading__Successful__n
call fcn.00439510
lea eax, [ebp - 0x38]
push eax
call dword [0x43f1a0]
add esp, 8
test al, al
jne 0x43850e
lea eax, [ebp - 0x1d0]
push eax
lea ecx, [ebp - 0x38]
call dword [0x43f274]
mov ecx, eax
mov byte [ebp - 4], 0x5d
call dword [0x43f290]
push eax
push str._nfile__s_does_not_exist_.._Creating_file_n
call fcn.00439510
add esp, 8
mov byte [ebp - 4], 0x5c
lea ecx, [ebp - 0x1d0]
call dword [0x43f294]
push 1
push 0xffffffffffffffff
push ecx
mov ecx, esp
push 0x5c
call dword [0x43f254]
lea ecx, [ebp - 0x38]
call dword [0x43f1f0]
push eax
lea eax, [ebp - 0xe4]
push eax
lea ecx, [ebp - 0x38]
call dword [0x43f27c]
lea eax, [ebp - 0xe4]
mov byte [ebp - 4], 0x5e
push eax
lea ecx, [ebp - 0x108]
call dword [0x43f1a4]
lea eax, [ebp - 0xe4]
mov byte [ebp - 4], 0x5f
push eax
lea ecx, [ebp - 0x108]
call dword [0x43f1b0]
test al, al
jne 0x4384e2
lea eax, [ebp - 0xe4]
push eax
lea ecx, [ebp - 0x108]
call dword [0x43f1ac]
lea eax, [ebp - 0x38]
push eax
lea ecx, [ebp - 0xa8]
call dword [0x43f19c]
lea ecx, [ebp - 0x108]
call dword [0x43f1a8]
lea ecx, [ebp - 0xe4]
mov byte [ebp - 4], 0x5c
call dword [0x43f338]
push ecx
mov eax, esp
lea ecx, [ebp - 0xa8]
mov dword [eax], 2
call dword [0x43f210]
test al, al
je 0x4392d0
push str._nWriting_data_..._n
call fcn.00439510
add esp, 4
lea ecx, [ebp - 0x74]
call dword [0x43f1c8]
push 3
lea eax, [ebp - 0x1d4]
mov byte [ebp - 4], 0x60
push eax
lea ecx, [ebp - 0x38]
call dword [0x43f244]
push eax
lea ecx, [ebp - 0x74]
call dword [0x43f2d4]
lea ecx, [ebp - 0x1d4]
call dword [0x43f338]
lea eax, [ebp - 0x1d8]
push eax
lea ecx, [ebp - 0x74]
call dword [0x43f2c0]
mov ecx, dword [eax]
push 1
push 0xffffffffffffffff
push 0x4447a0
push dword [ecx + 4]
mov ecx, eax
mov byte [ebp - 4], 0x61
call dword [0x43f1f4]
push eax
call dword [0x43f188]
add esp, 0x14
mov byte [ebp - 4], 0x60
lea ecx, [ebp - 0x1d8]
mov esi, eax
call dword [0x43f338]
test esi, esi
jne 0x4385de
lea ecx, [ebp - 0xa8]
call dword [0x43f21c]
push ecx
lea eax, [ebp - 0x38]
mov ecx, esp
push eax
call dword [0x43f288]
push edi
call fcn.0042fa70
add esp, 8
jmp 0x438652
lea ecx, [ebp - 0xac]
call dword [0x43f28c]
xor esi, esi
mov byte [ebp - 4], 0x62
cmp dword [ebp - 0xb0], esi
jle 0x438627
nop dword [eax + eax]
movzx eax, byte [esi + edi]
lea ecx, [ebp - 0xac]
push eax
push esi
lea eax, [ebp - 0x18]
push eax
call dword [0x43f200]
mov ecx, eax
call dword [0x43f1fc]
inc esi
cmp esi, dword [ebp - 0xb0]
jl 0x438600
lea eax, [ebp - 0xac]
push eax
lea ecx, [ebp - 0xa8]
call dword [0x43f198]
lea ecx, [ebp - 0xa8]
call dword [0x43f21c]
lea ecx, [ebp - 0xac]
call dword [0x43f294]
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 0x5c
call dword [0x43f338]
lea ecx, [ebp - 0xd8]
call dword [0x43f1bc]
mov ecx, eax
call fcn.00439b20
divsd xmm0, qword [0x444e38]
sub esp, 8
movsd qword [esp], xmm0
push str._n_f_seconds_n
call fcn.00439510
add esp, 0xc
test edi, edi
je 0x43869d
push edi
call dword [0x43f3cc]
add esp, 4
lea eax, [ebp - 0x1dc]
push eax
lea ecx, [ebp - 0x38]
call dword [0x43f274]
mov ecx, eax
mov byte [ebp - 4], 0x63
call dword [0x43f290]
push eax
push str._nReaded_data_is_dumped_on__s_n
call fcn.00439510
add esp, 8
lea ecx, [ebp - 0x1dc]
call dword [0x43f294]
lea ecx, [ebp - 0xa8]
jmp 0x438a85
mov ecx, str._write
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x438705
test dl, dl
je 0x438701
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x438705
add eax, 2
add ecx, 2
test dl, dl
jne 0x4386e5
xor eax, eax
jmp 0x43870a
sbb eax, eax
or eax, 1
test eax, eax
jne 0x439467
xor al, al
mov byte [ebp - 0x59], al
nop word [eax + eax]
lea eax, [edi - 1]
cmp dword [ebp - 0x34], eax
jge 0x43888c
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x3c]
inc eax
mov dword [ebp - 0x34], eax
mov edi, eax
mov esi, dword [ecx + eax*4]
push esi
call fcn.00432a70
add esp, 4
test al, al
jne 0x43888c
push esi
call fcn.00432dd0
add esp, 4
test al, al
je 0x438d0d
mov ecx, edi
cmp ecx, dword [ebp + 8]
jge 0x43888c
mov eax, dword [ebp - 0x3c]
inc ecx
mov dword [ebp - 0x34], ecx
mov esi, dword [eax + ecx*4 - 4]
mov ecx, 0x443f54
mov eax, esi
nop word [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4387a0
test dl, dl
je 0x43879c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4387a0
add eax, 2
add ecx, 2
test dl, dl
jne 0x438780
xor eax, eax
jmp 0x4387a5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x438801
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ecx + eax*4]
test edx, edx
je 0x4387cb
mov ecx, edx
lea esi, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4387c0
sub ecx, esi
jmp 0x4387cd
xor ecx, ecx
push edx
push ecx
lea ecx, [ebp - 0x6c]
call dword [0x43f1f8]
push 0x10
push 0
lea ecx, [ebp - 0x6c]
mov byte [ebp - 4], 0x64
call dword [0x43f270]
lea ecx, [ebp - 0x6c]
mov dword [ebp - 0xe8], eax
mov byte [ebp - 4], 2
call dword [0x43f338]
jmp 0x438880
mov ecx, str.__fn
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x438828
test dl, dl
je 0x438824
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x438828
add eax, 2
add ecx, 2
test dl, dl
jne 0x438808
xor eax, eax
jmp 0x43882d
sbb eax, eax
or eax, 1
test eax, eax
jne 0x438848
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x3c]
push dword [ecx + eax*4]
lea ecx, [ebp - 0x38]
call dword [0x43f26c]
jmp 0x438880
mov eax, 0x443f5c
nop dword [eax]
mov cl, byte [esi]
cmp cl, byte [eax]
jne 0x438870
test cl, cl
je 0x43886c
mov cl, byte [esi + 1]
cmp cl, byte [eax + 1]
jne 0x438870
add esi, 2
add eax, 2
test cl, cl
jne 0x438850
xor eax, eax
jmp 0x438875
sbb eax, eax
or eax, 1
test eax, eax
jne 0x438880
mov byte [ebp - 0x59], 1
mov dword [ebp - 0x34], edi
mov edi, dword [ebp + 8]
cmp dword [ebp - 0x34], edi
jl 0x438720
lea eax, [ebp - 0x38]
push eax
lea ecx, [ebp - 0x15c]
call dword [0x43f218]
lea eax, [ebp - 0x38]
mov byte [ebp - 4], 0x65
push eax
call dword [0x43f1a0]
add esp, 4
test al, al
je 0x4393e1
push 0
push 0x43f978
call dword [0x43f2a8]
add esp, 8
mov dword [ebp - 0x8c], eax
push 3
lea eax, [ebp - 0x218]
mov byte [ebp - 4], 0x67
push eax
lea ecx, [ebp - 0x38]
call dword [0x43f244]
push eax
lea ecx, [ebp - 0x8c]
call dword [0x43f2d4]
lea ecx, [ebp - 0x218]
call dword [0x43f338]
lea ecx, [ebp - 0x64]
call dword [0x43f28c]
push ecx
mov eax, esp
mov byte [ebp - 4], 0x68
lea ecx, [ebp - 0x15c]
mov dword [eax], 1
call dword [0x43f210]
test al, al
je 0x4393b6
lea eax, [ebp - 0x1e4]
push eax
lea ecx, [ebp - 0x15c]
call dword [0x43f194]
push eax
lea ecx, [ebp - 0x64]
call dword [0x43f264]
lea ecx, [ebp - 0x1e4]
call dword [0x43f294]
lea ecx, [ebp - 0x15c]
call dword [0x43f21c]
mov eax, dword [ebp - 0x64]
mov eax, dword [eax + 4]
mov dword [ebp - 0x40], eax
test eax, eax
je 0x439346
lea ecx, [ebp - 0x64]
call dword [0x43f290]
mov edi, eax
lea ecx, [ebp - 0x8c]
lea eax, [ebp - 0x58]
push eax
call dword [0x43f2c0]
mov ecx, dword [eax]
push 1
push 0xffffffffffffffff
push 0x4447a0
push dword [ecx + 4]
mov ecx, eax
mov byte [ebp - 4], 0x6a
call dword [0x43f1f4]
push eax
call dword [0x43f188]
add esp, 0x14
mov byte [ebp - 4], 0x68
lea ecx, [ebp - 0x58]
mov esi, eax
call dword [0x43f338]
test esi, esi
jne 0x4389d1
lea eax, [ebp - 0x28]
push eax
push edi
call fcn.00430d30
mov edi, dword [ebp - 0x20]
add esp, 8
mov esi, dword [ebp - 0x28]
jmp 0x4389d4
mov esi, dword [ebp - 0x40]
lea ecx, [ebp - 0xd8]
call dword [0x43f1b8]
mov ecx, dword [0x44ee18]
push dword [ebp - 0xe8]
push esi
mov eax, dword [ecx]
push edi
mov eax, dword [eax + 0x4c]
call eax
test eax, eax
je 0x439334
push str.Writing_data__Successful__n
call fcn.00439510
add esp, 4
lea ecx, [ebp - 0xd8]
call dword [0x43f1bc]
mov ecx, eax
call fcn.00439b20
divsd xmm0, qword [0x444e38]
sub esp, 8
movsd qword [esp], xmm0
push str._n_f_seconds_n
call fcn.00439510
add esp, 0xc
cmp byte [ebp - 0x59], 0
je 0x438a5d
mov ecx, dword [0x44ee18]
push dword [ebp - 0xe8]
push esi
mov eax, dword [ecx]
push edi
mov eax, dword [eax + 0x50]
call eax
test eax, eax
je 0x439322
push str.Verify_data__Successful__n
call fcn.00439510
add esp, 4
lea ecx, [ebp - 0x64]
call dword [0x43f294]
lea ecx, [ebp - 0x8c]
call dword [0x43f338]
lea ecx, [ebp - 0x15c]
mov byte [ebp - 4], 2
call dword [0x43f214]
mov edi, dword [ebp + 8]
mov esi, dword [ebp - 0x34]
cmp esi, edi
jl 0x434b40
jmp 0x434ca5
push str._nbad_parameter__Set_Rts_line__should_be_Hi_or_Lo_________Failed__n
call fcn.00439510
mov eax, dword [ebp + 8]
add esp, 4
mov ecx, dword [ebp - 0x34]
dec eax
cmp ecx, eax
jge 0x43947d
mov eax, dword [ebp - 0x3c]
push dword [eax + ecx*4]
push str._nbad_parameter___s___n
jmp 0x439475
lea eax, [edi - 1]
cmp dword [ebp - 0x34], eax
jge 0x43947d
push esi
push str._nbad_parameter___s___n
jmp 0x439475
push str._nbad_parameter__Set_Dtr_line__should_be_Hi_or_Lo_________Failed__n
jmp 0x438aa7
mov ecx, dword [ebp - 0x34]
lea eax, [edi - 1]
cmp ecx, eax
jge 0x438b0a
push esi
push str.bad_parameter___s___n
call fcn.00439510
mov edi, dword [ebp + 8]
add esp, 8
mov ecx, dword [ebp - 0x34]
lea eax, [edi - 1]
jmp 0x438ab6
push str._nSome_pages_are_write_protected__n
call fcn.00439510
add esp, 4
jmp 0x43947d
push str._nErasing_all_page______Failed__n
call fcn.00439510
add esp, 4
mov edi, 1
jmp 0x434ce3
push str._nSome_pages_are_write_protected__n
call fcn.00439510
add esp, 4
jmp 0x438b5e
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x3c]
push dword [ecx + eax*4 + 4]
push str._nbad_parameter___s___n
call fcn.00439510
add esp, 8
mov eax, dword [0x44ee18]
cmp dword [eax + 0x20], 0
je 0x438b83
mov eax, dword [eax + 0xde]
mov ecx, dword [eax + 0xc]
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [0x44ee18]
mov dword [eax + 0x20], 0
call dword [0x43f0a8]
test eax, eax
jne 0x438b9a
push str.GD32MCU_dll_release_resource_failed__n
call fcn.00439510
add esp, 4
lea ecx, [ebp - 0xc0]
call fcn.0040ac90
mov edi, 1
jmp 0x434ce3
push str._nErasing___i_______Failed__n
jmp 0x439475
lea eax, [edi - 1]
cmp dword [ebp - 0x34], eax
jge 0x43947d
push esi
push str.bad_parameter___s___n
jmp 0x439475
push str.Uploading_____page___8d___16x_size___8.2f_KB______Failed__n
call fcn.00439510
add esp, 0x14
mov eax, dword [0x44ee18]
cmp dword [eax + 0x20], 0
je 0x438c02
mov eax, dword [eax + 0xde]
mov ecx, dword [eax + 0xc]
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [0x44ee18]
mov dword [eax + 0x20], 0
call dword [0x43f0a8]
test eax, eax
jne 0x438c19
push str.GD32MCU_dll_release_resource_failed__n
call fcn.00439510
add esp, 4
lea ecx, [ebp - 0x148]
call dword [0x43f214]
mov edi, 1
jmp 0x434ce3
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x3c]
push dword [ecx + eax*4 + 4]
push str._nbad_parameter___s___n
call fcn.00439510
mov eax, dword [0x44ee18]
add esp, 8
cmp dword [eax + 0x20], 0
je 0x438c6b
mov eax, dword [eax + 0xde]
mov ecx, dword [eax + 0xc]
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [0x44ee18]
mov dword [eax + 0x20], 0
call dword [0x43f0a8]
test eax, eax
jne 0x438c82
push str.GD32MCU_dll_release_resource_failed__n
call fcn.00439510
add esp, 4
lea ecx, [ebp - 0xbc]
call fcn.0040ac90
mov edi, 1
jmp 0x434ce3
push str.Uploading_____page___8d___16x_size___8.2f_KB______Failed__n
call fcn.00439510
add esp, 0x14
mov eax, dword [0x44ee18]
cmp dword [eax + 0x20], 0
je 0x438cc9
mov eax, dword [eax + 0xde]
mov ecx, dword [eax + 0xc]
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [0x44ee18]
mov dword [eax + 0x20], 0
call dword [0x43f0a8]
test eax, eax
jne 0x438ce0
push str.GD32MCU_dll_release_resource_failed__n
call fcn.00439510
add esp, 4
lea ecx, [ebp - 0xb8]
call dword [0x43f214]
mov edi, 1
jmp 0x434ce3
lea eax, [edi - 1]
cmp dword [ebp - 0x34], eax
jge 0x43947d
push esi
push str._nbad_parameter___s___n
jmp 0x439475
mov eax, dword [ebp + 8]
dec eax
jmp 0x43946a
push str.Some_pages_are_write_protected__n
call fcn.00439510
mov eax, dword [0x44ee18]
add esp, 4
cmp dword [eax + 0x20], 0
je 0x438df7
mov eax, dword [eax + 0xde]
mov ecx, dword [eax + 0xc]
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [0x44ee18]
mov dword [eax + 0x20], 0
jmp 0x438df7
push str._nFailed_to_erase...._n
call fcn.00439510
add esp, 4
jmp 0x438dbb
push str.Downloading___page___8d___16x_size___8.2f_KB______Failed__n
call fcn.00439510
add esp, 0x14
jmp 0x438dbb
push str.Verifying_____page___8d___16x_size___8.2f_KB______Failed__n
call fcn.00439510
add esp, 0x14
jmp 0x438dbb
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp - 0x38]
call dword [0x43f274]
mov ecx, eax
mov byte [ebp - 4], 0x2f
call dword [0x43f290]
push eax
push str._nfile_is_empty__s__n
call fcn.00439510
add esp, 8
mov byte [ebp - 4], 0x2e
lea ecx, [ebp - 0x58]
call dword [0x43f294]
mov eax, dword [0x44ee18]
cmp dword [eax + 0x20], 0
je 0x438de0
mov eax, dword [eax + 0xde]
mov ecx, dword [eax + 0xc]
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [0x44ee18]
mov dword [eax + 0x20], 0
call dword [0x43f0a8]
test eax, eax
jne 0x438df7
push str.GD32MCU_dll_release_resource_failed__n
call fcn.00439510
add esp, 4
lea ecx, [ebp - 0xc8]
call dword [0x43f294]
lea ecx, [ebp - 0xec]
call dword [0x43f338]
lea ecx, [ebp - 0x178]
call dword [0x43f214]
mov edi, 1
jmp 0x434ce3
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp - 0x38]
call dword [0x43f274]
mov ecx, eax
mov byte [ebp - 4], 0x2c
call dword [0x43f290]
push eax
push str._nfile_does_not_exist__s__n
call fcn.00439510
add esp, 8
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0x58]
call dword [0x43f294]
mov eax, dword [0x44ee18]
cmp dword [eax + 0x20], 0
je 0x438e7e
mov eax, dword [eax + 0xde]
mov ecx, dword [eax + 0xc]
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [0x44ee18]
mov dword [eax + 0x20], 0
call dword [0x43f0a8]
test eax, eax
jne 0x438e95
push str.GD32MCU_dll_release_resource_failed__n
call fcn.00439510
add esp, 4
lea ecx, [ebp - 0x178]
call dword [0x43f214]
mov edi, 1
jmp 0x434ce3
push str.Init_OptionBytes_failed_
jmp 0x434cd9
push str._nEnabling_read_protection________Failed__n
call fcn.00439510
add esp, 4
jmp 0x43947d
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x3c]
push dword [ecx + eax*4 + 4]
push str._nbad_parameter___s___n
call fcn.00439510
mov eax, dword [0x44ee18]
add esp, 8
cmp dword [eax + 0x20], 0
je 0x438f03
mov eax, dword [eax + 0xde]
mov ecx, dword [eax + 0xc]
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [0x44ee18]
mov dword [eax + 0x20], 0
call dword [0x43f0a8]
test eax, eax
jne 0x438f1a
push str.GD32MCU_dll_release_resource_failed__n
call fcn.00439510
add esp, 4
lea ecx, [ebp - 0xc4]
call fcn.0040ac90
mov edi, 1
jmp 0x434ce3
push str._nEnabling_write_protection__________Failed__n
call fcn.00439510
add esp, 4
jmp 0x43947d
push str._nDisabling_write_protection_________Failed__n
call fcn.00439510
add esp, 4
jmp 0x43947d
mov eax, dword [ebp + 8]
dec eax
cmp dword [ebp - 0x34], eax
jge 0x43947d
push esi
push str._nbad_parameter___s___n
jmp 0x439475
push str.Init_OptionBytes_failed_
call fcn.00439510
add esp, 4
jmp 0x43947d
push str._nSetting_Option_bytes_data_________Failed__n
call fcn.00439510
add esp, 4
jmp 0x438fd5
push str.Init_OptionBytes_failed_
call fcn.00439510
add esp, 4
jmp 0x438fd5
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp - 0x38]
call dword [0x43f274]
mov ecx, eax
mov byte [ebp - 4], 0x4a
call dword [0x43f290]
push eax
push str._nfile_is_empty__s__n
call fcn.00439510
add esp, 8
mov byte [ebp - 4], 0x49
lea ecx, [ebp - 0x58]
call dword [0x43f294]
mov eax, dword [0x44ee18]
cmp dword [eax + 0x20], 0
je 0x438ffa
mov eax, dword [eax + 0xde]
mov ecx, dword [eax + 0xc]
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [0x44ee18]
mov dword [eax + 0x20], 0
call dword [0x43f0a8]
test eax, eax
jne 0x439011
push str.GD32MCU_dll_release_resource_failed__n
call fcn.00439510
add esp, 4
lea ecx, [ebp - 0x84]
call dword [0x43f294]
lea ecx, [ebp - 0x180]
call dword [0x43f214]
mov edi, 1
jmp 0x434ce3
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp - 0x38]
call dword [0x43f274]
mov ecx, eax
mov byte [ebp - 4], 0x48
call dword [0x43f290]
push eax
push str._nfile_does_not_exist__s__n
call fcn.00439510
add esp, 8
mov byte [ebp - 4], 0x47
lea ecx, [ebp - 0x58]
call dword [0x43f294]
mov eax, dword [0x44ee18]
cmp dword [eax + 0x20], 0
je 0x43908c
mov eax, dword [eax + 0xde]
mov ecx, dword [eax + 0xc]
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [0x44ee18]
mov dword [eax + 0x20], 0
call dword [0x43f0a8]
test eax, eax
jne 0x4390a3
push str.GD32MCU_dll_release_resource_failed__n
call fcn.00439510
add esp, 4
lea ecx, [ebp - 0x180]
call dword [0x43f214]
mov edi, 1
jmp 0x434ce3
push str.Getting_OTP_data_______16x___16x_size___8.2f_KB______Failed__n
call fcn.00439510
mov eax, dword [0x44ee18]
add esp, 0x14
cmp dword [eax + 0x20], 0
je 0x4390eb
mov eax, dword [eax + 0xde]
mov ecx, dword [eax + 0xc]
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [0x44ee18]
mov dword [eax + 0x20], 0
call dword [0x43f0a8]
test eax, eax
jne 0x439102
push str.GD32MCU_dll_release_resource_failed__n
call fcn.00439510
add esp, 4
lea ecx, [ebp - 0x244]
call fcn.0041b4f0
lea ecx, [ebp - 0xa0]
call dword [0x43f214]
mov edi, 1
jmp 0x434ce3
mov eax, dword [0x44ee18]
cmp dword [eax + 0x20], 0
je 0x439148
mov eax, dword [eax + 0xde]
mov ecx, dword [eax + 0xc]
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [0x44ee18]
mov dword [eax + 0x20], 0
call dword [0x43f0a8]
test eax, eax
jne 0x43915f
push str.GD32MCU_dll_release_resource_failed__n
call fcn.00439510
add esp, 4
lea ecx, [ebp - 0xa0]
call dword [0x43f214]
mov edi, 1
jmp 0x434ce3
push str.Verify_OTP_data__Failed__n
call fcn.00439510
add esp, 4
jmp 0x4391cd
push str.Setting_OTP_data__Failed__n
call fcn.00439510
add esp, 4
jmp 0x4391cd
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp - 0x38]
call dword [0x43f274]
mov ecx, eax
mov byte [ebp - 4], 0x59
call dword [0x43f290]
push eax
push str._nfile_is_empty__s__n
call fcn.00439510
add esp, 8
mov byte [ebp - 4], 0x58
lea ecx, [ebp - 0x58]
call dword [0x43f294]
mov eax, dword [0x44ee18]
cmp dword [eax + 0x20], 0
je 0x4391f2
mov eax, dword [eax + 0xde]
mov ecx, dword [eax + 0xc]
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [0x44ee18]
mov dword [eax + 0x20], 0
call dword [0x43f0a8]
test eax, eax
jne 0x439209
push str.GD32MCU_dll_release_resource_failed__n
call fcn.00439510
add esp, 4
lea ecx, [ebp - 0x88]
call dword [0x43f294]
lea ecx, [ebp - 0xf0]
call dword [0x43f338]
lea ecx, [ebp - 0x188]
call dword [0x43f214]
mov edi, 1
jmp 0x434ce3
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp - 0x38]
call dword [0x43f274]
mov ecx, eax
mov byte [ebp - 4], 0x56
call dword [0x43f290]
push eax
push str._nfile_does_not_exist__s__n
call fcn.00439510
add esp, 8
mov byte [ebp - 4], 0x55
lea ecx, [ebp - 0x58]
call dword [0x43f294]
mov eax, dword [0x44ee18]
cmp dword [eax + 0x20], 0
je 0x439290
mov eax, dword [eax + 0xde]
mov ecx, dword [eax + 0xc]
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [0x44ee18]
mov dword [eax + 0x20], 0
call dword [0x43f0a8]
test eax, eax
jne 0x4392a7
push str.GD32MCU_dll_release_resource_failed__n
call fcn.00439510
add esp, 4
lea ecx, [ebp - 0x188]
call dword [0x43f214]
mov edi, 1
jmp 0x434ce3
push edx
jmp 0x439470
push str.Reading__Failed__n
call fcn.00439510
add esp, 4
mov eax, dword [0x44ee18]
cmp dword [eax + 0x20], 0
je 0x4392f5
mov eax, dword [eax + 0xde]
mov ecx, dword [eax + 0xc]
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [0x44ee18]
mov dword [eax + 0x20], 0
call dword [0x43f0a8]
test eax, eax
jne 0x43930c
push str.GD32MCU_dll_release_resource_failed__n
call fcn.00439510
add esp, 4
lea ecx, [ebp - 0xa8]
call dword [0x43f214]
mov edi, 1
jmp 0x434ce3
push str.Verify_data__Failed__n
call fcn.00439510
add esp, 4
jmp 0x43937a
push str.Writing_data__Failed__n
call fcn.00439510
add esp, 4
jmp 0x43937a
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp - 0x38]
call dword [0x43f274]
mov ecx, eax
mov byte [ebp - 4], 0x69
call dword [0x43f290]
push eax
push str._nfile_is_empty__s__n
call fcn.00439510
add esp, 8
mov byte [ebp - 4], 0x68
lea ecx, [ebp - 0x58]
call dword [0x43f294]
mov eax, dword [0x44ee18]
cmp dword [eax + 0x20], 0
je 0x43939f
mov eax, dword [eax + 0xde]
mov ecx, dword [eax + 0xc]
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [0x44ee18]
mov dword [eax + 0x20], 0
call dword [0x43f0a8]
test eax, eax
jne 0x4393b6
push str.GD32MCU_dll_release_resource_failed__n
call fcn.00439510
add esp, 4
lea ecx, [ebp - 0x64]
call dword [0x43f294]
lea ecx, [ebp - 0x8c]
call dword [0x43f338]
lea ecx, [ebp - 0x15c]
call dword [0x43f214]
mov edi, 1
jmp 0x434ce3
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp - 0x38]
call dword [0x43f274]
mov ecx, eax
mov byte [ebp - 4], 0x66
call dword [0x43f290]
push eax
push str._nfile_does_not_exist__s__n
call fcn.00439510
add esp, 8
mov byte [ebp - 4], 0x65
lea ecx, [ebp - 0x58]
call dword [0x43f294]
mov eax, dword [0x44ee18]
cmp dword [eax + 0x20], 0
je 0x43943a
mov eax, dword [eax + 0xde]
mov ecx, dword [eax + 0xc]
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [0x44ee18]
mov dword [eax + 0x20], 0
call dword [0x43f0a8]
test eax, eax
jne 0x439451
push str.GD32MCU_dll_release_resource_failed__n
call fcn.00439510
add esp, 4
lea ecx, [ebp - 0x15c]
call dword [0x43f214]
mov edi, 1
jmp 0x434ce3
lea eax, [edi - 1]
cmp dword [ebp - 0x34], eax
jge 0x43947d
push esi
push str._nbad_parameter___s__n
call fcn.00439510
add esp, 8
mov eax, dword [0x44ee18]
cmp dword [eax + 0x20], 0
je 0x4394a2
mov eax, dword [eax + 0xde]
mov ecx, dword [eax + 0xc]
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [0x44ee18]
mov dword [eax + 0x20], 0
call dword [0x43f0a8]
test eax, eax
jne 0x4394b9
push str.GD32MCU_dll_release_resource_failed__n
call fcn.00439510
add esp, 4
mov edi, 1
jmp 0x434ce3
lea eax, [edi - 1]
cmp dword [ebp - 0x34], eax
jge 0x4394d9
push esi
push str.bad_parameter___s___n
call fcn.00439510
add esp, 8
mov eax, dword [0x44ee18]
cmp dword [eax + 0x20], 0
je 0x4394b9
mov eax, dword [eax + 0xde]
mov ecx, dword [eax + 0xc]
mov eax, dword [ecx]
call dword [eax + 4]
mov edi, 1
jmp 0x434ce3
push str.Get_OptionBytes_failed_
call fcn.00439510
add esp, 4
jmp 0x43947d