Function at 0x403320
Capabilities:
Check for time delay via gettickcount
Contain obfuscated stackstrings
Read file on windows
Write file on windows

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffffc0
mov eax, 0x48b4
call fcn.0041aee0
mov eax, dword [0x4353f4]
xor eax, esp
mov dword [esp + 0x48b0], eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [str.19_2]
mov dl, byte [0x42c3e4]
push ebx
push esi
push edi
push 0x7fb
mov dword [esp + 0x38], eax
xor esi, esi
lea eax, [esp + 0xc1]
push esi
push eax
mov dword [esp + 0xc4], ecx
mov byte [esp + 0xc8], dl
call fcn.0041c990
mov cl, 0x35
add esp, 0xc
mov byte [esp + 0xa8], cl
xor eax, eax
mov dword [esp + 0x50], esi
mov dword [esp + 0x54], esi
mov dword [esp + 0x58], esi
mov dword [esp + 0x5c], esi
mov dword [esp + 0x68], esi
mov dword [esp + 0x6c], esi
mov dword [esp + 0x78], 0xa
mov dword [esp + 0x7c], esi
mov dword [esp + 0xa9], 0x2e39202e
mov dword [esp + 0xad], 0x352e3330
mov dword [esp + 0xb1], 0x38312e36
mov byte [esp + 0xb5], 0
mov dword [0x5c10f60], esi
mov dword [0x3b8c540], esi
mov dword [esp + 0xa4], 0x302e3731
xor ecx, ecx
jmp 0x4033f0
mov byte [eax + 0x253a740], al
add eax, 1
adc ecx, esi
js 0x4033f0
jg 0x403406
cmp eax, 0x100000
jb 0x4033f0
push str._nBase_Version:_17.04.27.14.27
call fcn.0041917f
add esp, 4
push str.03:56:18
push str.May__9_2017
push str._nBinary_build_date:__s____s
call fcn.0041917f
add esp, 0xc
lea ecx, [esp + 0xa4]
push ecx
push str._nIncremental_Build_version:__s_n
call fcn.0041917f
mov ebx, dword [ebp + 8]
add esp, 8
cmp ebx, 2
jge 0x403473
call fcn.00418966
lea edi, [eax + 0x40]
call fcn.00414430
push str._nDebugging_n_nBy_default___loglevel1._This_is_a_decent_amount_of_logging_for_debugging._n_____________loglevel2._This_shows_more_information_such_as_RAW_packets_being_sent._n_____________loglevel3._This_is_very_verbose__showing_every_byte_in_a_HEX_editor_view_that_is_sent_received._n_____________loglevel0._Turns_off_nearly_all_logging._n_____________showdigestperpacket___This_shows_the_SHA256_digest_for_every_packet_sent_n_____________createdigests___createcommandtrace___Adding_createcommandtrace_creates_command_trace.txt___This_shows_every_packet_and_its_hash
push edi
call fcn.00419576
push str._nUsage:__nfh_loader.exe___port.COM19___sendimageAnyFile.bin___search_pathc:_buildsPerforce_maincore_storage_tools___noreset___noprompt_nfh_loader.exe___port.COM19___sendimageAnyFile.bin___search_pathc:_buildsPerforce_maincore_storage_tools___noreset___noprompt___interactive1__n_nfh_loader.exe___port.COM19___sendimageAnyFile.bin___search_pathc:_buildsPerforce_maincore_storage_tools___noreset___noprompt___interactive2__n_nfh_loader.exe___port.COM19___sendxmlrawprogram0.xml___search_pathc:_buildsPerforce_maincore_storage_tools__nfh_loader.exe___port.COM19___sendxmlrawprogram0.xml___search_pathc:_buildsPerforce_maincore_storage_tools___loglevel2_nfh_loader.exe___port.COM19___sendxmlrawprogram0.xml___search_pathc:_buildsPerforce_maincore_storage_tools___createcommandtrace_n
push edi
call fcn.00419576
add esp, 0x10
push esi
call fcn.0041a13d
call fcn.00401020
push 0x800
push 0x24f9700
call fcn.004199d1
add esp, 8
test eax, eax
je 0x4094cb
mov eax, 0x24f9700
lea ecx, [eax + 1]
lea ebx, [ebx]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x4034a0
sub eax, ecx
mov byte [eax + 0x24f9700], 0x5c
mov byte [eax + 0x24f9701], 0
mov eax, ebx
cdq
xor esi, esi
mov ebx, edx
mov dword [esp + 0x24], esi
mov byte [0x436420], 0
lea edi, [esi + 1]
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], ebx
cmp esi, ebx
jg 0x403519
jl 0x4034e0
cmp edi, eax
jae 0x403519
mov edi, edi
mov eax, dword [esp + 0x34]
push 0x3b8c560
push edi
call fcn.00401610
add esp, 8
call fcn.004144b0
test eax, eax
je 0x4036aa
add edi, 1
adc esi, 0
cmp esi, ebx
jl 0x4034e0
jg 0x403511
cmp edi, dword [esp + 0x28]
jb 0x4034e0
mov ebx, dword [esp + 0x2c]
mov eax, dword [esp + 0x28]
xor edi, edi
mov edx, eax
mov esi, 1
mov dword [esp + 0x60], edx
cmp edi, ebx
jg 0x4035a5
jl 0x403530
cmp esi, edx
jae 0x4035a5
mov eax, 0x238b640
dec eax
mov dword [esp + 0x70], eax
lea ebx, [ebx]
mov eax, dword [esp + 0x34]
push 0x3b8c560
push esi
call fcn.00401610
mov eax, 0x238b640
add esp, 8
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x403560
sub eax, edx
mov edx, dword [esp + 0x70]
cmp byte [edx + eax], 0x3d
jne 0x40358f
mov eax, 0x3b8c560
lea edx, [eax + 1]
jmp 0x403580
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x403580
sub eax, edx
je 0x4036d4
add esi, 1
adc edi, 0
cmp edi, ebx
jl 0x403540
jg 0x4035a1
cmp esi, dword [esp + 0x60]
jb 0x403540
mov eax, dword [esp + 0x28]
xor esi, esi
mov edi, 1
mov dword [esp + 0x60], eax
cmp esi, ebx
jg 0x4037ab
jl 0x4035c2
cmp edi, eax
jae 0x4037ab
mov eax, dword [esp + 0x34]
push 0x3b8c560
push edi
call fcn.00401610
mov eax, 0x238b640
add esp, 8
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4035e0
sub eax, edx
cmp eax, 0xd
ja 0x4035f3
mov eax, 0xd
push eax
push str.porttracename
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x4036e5
push 0x3b8c560
push str.port_trace.txt
push str.User_changed__s_to__s_n
push 0xb33
push str.main
push 4
call fcn.00401210
mov eax, 0x3b8c560
add esp, 0x18
lea ecx, [eax + 1]
lea esp, [esp]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x403640
sub eax, ecx
xor ecx, ecx
push ecx
push eax
push ecx
push 0x800
push ecx
push eax
push ecx
push ecx
push ecx
push ecx
push 0x3b8c560
push str.port_trace.txt
call fcn.0040b150
add esp, 0x30
or eax, edx
jne 0x403791
mov eax, 0x3b8c560
lea edx, [eax + 1]
jmp 0x403680
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x403680
sub eax, edx
push eax
push 0x3b8c560
push str.Failed_to_copy__s_of_length__lld_bytes_into_PortTraceName
push 0xb37
push str.main
push 1
call fcn.00401210
add esp, 0x18
jmp 0x4036cd
call fcn.00414430
push 0x238b640
push str.Command_line_argument__s_is_not_recognized_as_a_valid_option
push 0xb17
push str.main
push 1
call fcn.00401210
add esp, 0x14
push 1
call fcn.004017c0
push 0x238b640
push str.Missing_argument_for____s
push 0xb26
jmp 0x4036be
mov eax, 0x238b640
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4036f0
sub eax, edx
cmp eax, 0xe
ja 0x403703
mov eax, 0xe
push eax
push str.mainoutputdir
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x403791
mov eax, 0x3b8c560
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x403722
xor ecx, ecx
push ecx
sub eax, edx
push eax
push ecx
push 0x800
push ecx
push eax
push ecx
push ecx
push ecx
push ecx
push 0x3b8c560
push 0x23893b8
call fcn.0040b150
add esp, 0x30
or eax, edx
je 0x403a4a
push 0x1ff
push 0x23893b8
call fcn.00428968
add esp, 8
cmp eax, 0xffffffff
jne 0x403778
push str.Already_exists
push 0xb47
jmp 0x403782
push str.Created_successfully
push 0xb4b
push str.main
push 4
call fcn.00401210
add esp, 0x10
add edi, 1
adc esi, 0
cmp esi, ebx
jl 0x4035c2
jg 0x4037ab
cmp edi, dword [esp + 0x60]
jb 0x4035c2
push 0x800
mov edx, 0x42b604
mov ecx, str.port_trace.txt
call fcn.00410ed0
add esp, 4
push str.FH_LOADER_WAS_CALLED_EXACTLY_LIKE_THIS_n_n
mov dword [0x2389bcc], eax
lea eax, [esp + 0xbc]
push 0x800
push eax
call fcn.00418f10
xor ebx, ebx
add esp, 0xc
xor edi, edi
mov esi, eax
cmp dword [esp + 0x2c], ebx
jl 0x403830
jg 0x4037f5
cmp dword [esp + 0x28], ebx
jbe 0x403830
mov ecx, dword [esp + 0x34]
mov edx, dword [ecx + edi*4]
push edx
mov eax, 0x800
push 0x42c010
sub eax, esi
push eax
lea ecx, [esp + esi + 0xc4]
push ecx
call fcn.00418f10
add esp, 0x10
add esi, eax
add edi, 1
adc ebx, 0
cmp ebx, dword [esp + 0x2c]
jl 0x4037f5
jg 0x403830
cmp edi, dword [esp + 0x28]
jb 0x4037f5
mov edx, 0x800
push 0x42c5f4
sub edx, esi
push edx
lea eax, [esp + esi + 0xc0]
push eax
call fcn.00418f10
add esp, 0xc
lea ecx, [esp + 0xb8]
push ecx
push 0xb59
push str.main
push 4
call fcn.00401210
push str.03:56:18
push str.May__9_2017
push str.Binary_build_date:__s____s_n
push 0xb5d
push str.main
push 5
call fcn.00401210
lea edx, [esp + 0xcc]
push edx
push str.Build_Version:__s_n
push 0xb5e
push str.main
push 5
call fcn.00401210
add esp, 0x3c
push 0x24f9700
push str.Current_working_dir__cwd_:__s
push 0xb5f
push str.main
push 4
call fcn.00401210
add esp, 0x14
push str.Showing_network_mappings_to_allow_debugging
push 0xb60
push str.main
push 4
call fcn.00401210
push 0x42c6a4
push str.net_use
call fcn.00417d8f
push eax
push 0x100000
push 0x253a740
mov dword [0x2389c00], eax
call fcn.00419047
add esp, 0x24
test eax, eax
je 0x40394a
jmp 0x403910
push 0x253a740
push 0x42bae0
push 0xb68
push str.main
push 5
call fcn.00401210
mov eax, dword [0x2389c00]
add esp, 0x14
push eax
push 0x100000
push 0x253a740
call fcn.00419047
add esp, 0xc
test eax, eax
jne 0x403910
mov ecx, dword [0x2389c00]
push ecx
call fcn.00418257
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x2c]
xor eax, eax
add esp, 4
mov ebx, 1
xor edi, edi
mov byte [0x436420], 1
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], eax
mov dword [esp + 0x40], edx
mov dword [esp + 0x44], ecx
cmp eax, ecx
jg 0x404116
jl 0x403993
cmp ebx, edx
jae 0x404116
mov eax, dword [esp + 0x34]
push 0x3b8c560
push ebx
call fcn.00401610
mov eax, 0x238b640
add esp, 8
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4039b0
sub eax, edx
cmp eax, 0xb
ja 0x4039c3
mov eax, 0xb
push eax
push str.memoryname
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x403b77
mov al, byte [0x3b8c560]
cmp al, 0x75
je 0x403b1b
cmp al, 0x55
je 0x403b1b
push edi
cmp al, 0x6e
jne 0x403a7f
push 5
push edi
push 0x800
push edi
push 4
push edi
push edi
push edi
push edi
push str.nand
push 0x3b86b28
call fcn.0040b150
add esp, 0x30
or eax, edx
jne 0x403b45
push 4
push str.nand
push str.Failed_to_copy__s_of_length__lld_bytes_into_fh.attrs.MemoryName
push 0xb8a
push str.main
push 1
call fcn.00401210
add esp, 0x18
jmp 0x4036cd
mov eax, 0x3b8c560
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x403a52
sub eax, edx
push eax
push 0x3b8c560
push str.Failed_to_copy__s_of_length__lld_bytes_into_MainOutputDir
push 0xb42
push str.main
push 1
call fcn.00401210
add esp, 0x18
jmp 0x4036cd
cmp al, 0x73
jne 0x403ad1
push 7
push edi
push 0x800
push edi
push 6
push edi
push edi
push edi
push edi
push str.spinor
push 0x3b86b28
call fcn.0040b150
add esp, 0x30
or eax, edx
jne 0x403b45
push 6
push str.spinor
push str.Failed_to_copy__s_of_length__lld_bytes_into_fh.attrs.MemoryName
push 0xb92
push str.main
push 1
call fcn.00401210
add esp, 0x18
jmp 0x4036cd
push 5
push edi
push 0x800
push edi
push 4
push edi
push edi
push edi
push edi
push str.emmc
push 0x3b86b28
call fcn.0040b150
add esp, 0x30
or eax, edx
jne 0x403b45
push 4
push str.emmc
push str.Failed_to_copy__s_of_length__lld_bytes_into_fh.attrs.MemoryName
push 0xb9a
push str.main
push 1
call fcn.00401210
add esp, 0x18
jmp 0x4036cd
push edi
push 4
push edi
push 0x800
push edi
push 3
push edi
push edi
push edi
push edi
push 0x42c6b0
push 0x3b86b28
call fcn.0040b150
add esp, 0x30
or eax, edx
je 0x4041c8
mov al, byte [0x3b86b28]
cmp al, 0x75
je 0x403b57
cmp al, 0x73
mov eax, 0x200
jne 0x403b5c
mov eax, 0x1000
mov dword [0x3a85a48], eax
mov dword [0x3a85a4c], edi
mov dword [0x436418], eax
mov dword [0x43641c], edi
jmp 0x4040ef
mov eax, 0x238b640
lea edx, [eax + 1]
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x403b80
sub eax, edx
cmp eax, 0x12
ja 0x403b93
mov eax, 0x12
push eax
push str.digestsperfilename
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x403c4d
push 0x3b8c560
push str.DigestsPerFile.txt
push str.User_changed__s_to__s_n
push 0xbb0
push str.main
push 4
call fcn.00401210
mov eax, 0x3b8c560
add esp, 0x18
lea ecx, [eax + 1]
lea esp, [esp]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x403be0
sub eax, ecx
xor ecx, ecx
push ecx
push eax
push edi
push 0x800
push ecx
push eax
push edi
push edi
push edi
push edi
push 0x3b8c560
push str.DigestsPerFile.txt
call fcn.0040b150
add esp, 0x30
or eax, edx
jne 0x4040ef
mov eax, 0x3b8c560
lea edx, [eax + 1]
jmp 0x403c20
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x403c20
sub eax, edx
push eax
push 0x3b8c560
push str.Failed_to_copy__s_of_length__lld_bytes_into_DigestsPerFileName
push 0xbb4
push str.main
push 1
call fcn.00401210
add esp, 0x18
jmp 0x4036cd
mov eax, 0x238b640
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x403c55
sub eax, edx
cmp eax, 8
ja 0x403c68
mov eax, 8
push eax
push str.noprompt
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x403c89
mov byte [0x436420], al
jmp 0x4040ef
mov eax, 0x238b640
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x403c91
sub eax, edx
cmp eax, 0x13
ja 0x403ca4
mov eax, 0x13
push eax
push str.convertprogram2read
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x403d36
mov byte [0x23893af], 1
mov eax, 0x238b640
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x403cd0
sub eax, edx
cmp eax, 6
ja 0x403ce3
mov eax, 6
push eax
push str.files
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x403ff1
mov eax, dword [0x2389be8]
push eax
push 0x24f9f20
push edi
push 0x800
push 0x3b8c560
call fcn.0040ef20
add esp, 0x14
mov dword [0x2389be8], eax
shl eax, 0xb
mov dword [0x2389bec], edx
mov byte [eax + 0x24f9f20], 0
jmp 0x4040ef
mov eax, 0x238b640
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x403d40
sub eax, edx
cmp eax, 6
ja 0x403d53
mov eax, 6
push eax
push 0x42adb4
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x403cc2
push 0x100000
push eax
push 0x277a800
call fcn.0041c990
mov ecx, 0xa
mov esi, 0x42afb8
mov edi, 0x277a800
rep movsd dword es:[edi], dword [esi]
mov eax, 0x277a800
add esp, 0xc
movsb byte es:[edi], byte [esi]
lea edx, [eax + 1]
jmp 0x403da0
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x403da0
sub eax, edx
mov edx, 0xffff7
sub edx, eax
cmp edx, 7
jb 0x403de2
mov ecx, dword [str._data__n]
mov dx, word [0x42c000]
mov dword [eax + 0x277a800], ecx
mov cl, byte [0x42c002]
mov word [eax + 0x277a804], dx
mov byte [eax + 0x277a806], cl
mov byte [eax + 0x277a807], 0
mov eax, 0x277a800
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x403df0
sub eax, edx
mov edx, 0xffff7
sub edx, eax
cmp edx, 7
jb 0x403e32
mov ecx, dword [str._erase]
mov dx, word [0x42c718]
mov dword [eax + 0x277a800], ecx
mov cl, byte [0x42c71a]
mov word [eax + 0x277a804], dx
mov byte [eax + 0x277a806], cl
mov byte [eax + 0x277a807], 0
mov edx, dword [0x43641c]
mov eax, dword [0x436418]
push edx
push eax
push str.SECTOR_SIZE_IN_BYTES__lld_
push 0x100000
push 0x253a740
call fcn.00418f10
mov eax, 0x277a800
add esp, 0x14
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x403e60
sub eax, edx
mov edi, eax
mov eax, 0x253a740
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x403e73
sub eax, edx
mov ecx, 0xffff7
mov esi, eax
sub ecx, edi
cmp esi, ecx
ja 0x403ea6
push esi
lea edx, [edi + 0x277a800]
push 0x253a740
push edx
call fcn.004207b0
add esp, 0xc
mov byte [edi + esi + 0x277a800], 0
push 0x3b8c560
call fcn.00418f05
add esp, 4
push eax
push str.physical_partition_number__d_
push 0x100000
push 0x253a740
call fcn.00418f10
mov eax, 0x277a800
add esp, 0x10
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x403ed3
sub eax, edx
mov edi, eax
mov eax, 0x253a740
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x403ee6
sub eax, edx
mov esi, eax
mov eax, 0xffff7
sub eax, edi
cmp esi, eax
ja 0x403f19
push esi
lea ecx, [edi + 0x277a800]
push 0x253a740
push ecx
call fcn.004207b0
add esp, 0xc
mov byte [edi + esi + 0x277a800], 0
mov eax, 0x277a800
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x403f21
sub eax, edx
mov edx, 0xffff7
sub edx, eax
cmp edx, 0xa
jb 0x403f63
mov ecx, dword [str.___n__data_]
mov edx, dword [0x42c740]
mov dword [eax + 0x277a800], ecx
mov cx, word [0x42c744]
mov dword [eax + 0x277a804], edx
mov word [eax + 0x277a808], cx
mov byte [eax + 0x277a80a], 0
mov eax, 0x277a800
lea edx, [eax + 1]
jmp 0x403f70
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x403f70
push 0
push 0x100000
push 0
push 0x1000
push 0
sub eax, edx
mov edx, dword [0x436428]
push eax
push 0
push 0
push 0
push 0
shl edx, 0xc
add edx, 0x3cccd60
push 0x277a800
push edx
call fcn.0040b150
mov eax, dword [0x43642c]
add esp, 0x30
add dword [0x436428], 1
adc eax, 0
mov dword [0x43642c], eax
test eax, eax
jg 0x403fdd
jl 0x4040ed
cmp dword [0x436428], 0x1f40
jb 0x4040ed
push 0x3cccd60
push str.1._Too_many_XML_files_in_XMLStringTable__max_is__d
push 0xbd6
jmp 0x4036be
mov eax, 0x238b640
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x404000
sub eax, edx
cmp eax, 9
ja 0x404013
mov eax, 9
push eax
push str.notfiles
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x404063
mov ecx, dword [0x2389bf0]
push ecx
push 0x3c8cd60
push edi
push 0x800
push 0x3b8c560
call fcn.0040ef20
add esp, 0x14
mov dword [0x2389bf0], eax
shl eax, 0xb
mov dword [0x2389bf4], edx
mov byte [eax + 0x3c8cd60], 0
jmp 0x4040ef
mov eax, 0x238b640
lea edx, [eax + 1]
jmp 0x404070
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x404070
sub eax, edx
cmp eax, 7
ja 0x404083
mov eax, 7
push eax
push str.labels
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x4040a1
mov ebx, 0x5c0cd60
jmp 0x4040df
mov eax, 0x238b640
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4040b0
sub eax, edx
cmp eax, 0xa
ja 0x4040c3
mov eax, 0xa
push eax
push str.notlabels
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x4040ef
mov ebx, 0x3b88340
mov ecx, 0x3b8c560
call fcn.004031b0
mov ebx, dword [esp + 0x20]
xor edi, edi
mov eax, dword [esp + 0x24]
add ebx, 1
adc eax, edi
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], eax
cmp eax, dword [esp + 0x44]
jl 0x403993
jg 0x404116
cmp ebx, dword [esp + 0x40]
jb 0x403993
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x28]
xor eax, eax
mov ebx, 1
mov dword [esp + 0x24], eax
mov dword [esp + 0x40], edx
mov dword [esp + 0x44], ecx
cmp eax, ecx
jg 0x40491e
jl 0x404143
cmp ebx, edx
jae 0x40491e
mov eax, dword [esp + 0x34]
push 0x3b8c560
push ebx
call fcn.00401610
mov eax, 0x238b640
add esp, 8
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x404160
sub eax, edx
cmp eax, 0xc
ja 0x404173
mov eax, 0xc
push eax
push str.search_path
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x4041ed
mov edx, dword [0x2389bd8]
push edx
push 0x273a800
push edi
push 0x800
push 0x3b8c560
call fcn.0040ef20
mov dword [0x2389bd8], eax
shl eax, 0xb
add esp, 0x14
mov dword [0x2389bdc], edx
mov byte [eax + 0x273a800], 0
call fcn.00416570
jmp 0x4048fb
push 3
push 0x42c6b0
push str.Failed_to_copy__s_of_length__lld_bytes_into_fh.attrs.MemoryName
push 0xb82
push str.main
push 1
call fcn.00401210
add esp, 0x18
jmp 0x4036cd
mov eax, 0x238b640
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4041f5
sub eax, edx
cmp eax, 0xd
ja 0x404208
mov eax, 0xd
push eax
push 0x42ad90
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x40424b
mov byte [0x23893ae], 1
mov dword [0x3a85a48], 1
mov dword [0x3a85a4c], edi
mov dword [0x436418], 1
mov dword [0x43641c], edi
jmp 0x4048fb
mov eax, 0x238b640
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x404253
sub eax, edx
cmp eax, 0x12
ja 0x404266
mov eax, 0x12
push eax
push str.sectorsizeinbytes
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x4042da
push 0x3b8c560
call fcn.00418f05
cdq
add esp, 4
push 0x3b8c560
mov dword [0x3a85a48], eax
mov dword [0x3a85a4c], edx
call fcn.00418f05
mov ecx, dword [0x3a85a48]
cdq
add esp, 4
mov dword [0x436418], eax
mov eax, dword [0x3a85a4c]
push eax
push ecx
push str.User_set_SECTOR_SIZE_IN_BYTES_to__ld_n
push 0xc1b
push str.main
push 5
mov dword [0x43641c], edx
call fcn.00401210
add esp, 0x18
jmp 0x4048fb
mov eax, 0x238b640
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4042e2
sub eax, edx
cmp eax, 0xc
ja 0x4042f5
mov eax, 0xc
push eax
push str.contentsxml
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x404346
mov eax, 0x3b8c560
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x404314
push edi
push 0x800
push edi
push 0x800
push edi
sub eax, edx
push eax
push edi
push edi
push edi
push edi
push 0x3b8c560
push 0x24f8f00
call fcn.0040b150
add esp, 0x30
jmp 0x4048fb
mov eax, 0x238b640
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x404350
sub eax, edx
cmp eax, 7
ja 0x404363
mov eax, 7
push eax
push str.flavor
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x4043b4
mov eax, 0x3b8c560
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x404382
push edi
push 0x800
push edi
push 0x800
push edi
sub eax, edx
push eax
push edi
push edi
push edi
push edi
push 0x3b8c560
push 0x238ae40
call fcn.0040b150
add esp, 0x30
jmp 0x4048fb
mov eax, 0x238b640
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4043c0
sub eax, edx
cmp eax, 0xf
ja 0x4043d3
mov eax, 0xf
push eax
push str.createconfigxml
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x4043fd
mov byte [0x2389ce1], 1
mov byte [0x2389c43], 1
jmp 0x4048fb
mov eax, 0x238b640
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x404405
sub eax, edx
cmp eax, 0xf
ja 0x404418
mov eax, 0xf
push eax
push str.flattenbuildto
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x4047d9
mov eax, 0x3b8c560
lea edx, [eax + 1]
jmp 0x404440
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x404440
push edi
push 0x800
push edi
push 0x800
push edi
sub eax, edx
push eax
push edi
push edi
push edi
push edi
push 0x3b8c560
push 0x23f76e0
call fcn.0040b150
add esp, 0x30
or eax, edx
je 0x404b63
mov eax, 0x23f76e0
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x404480
sub eax, edx
cmp byte [eax + 0x23f76e0], cl
jne 0x4044b0
mov byte [eax + 0x23f76e1], cl
mov eax, 0x23f76e0
lea edx, [eax + 1]
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4044a0
sub eax, edx
mov byte [eax + 0x23f76e0], 0x5c
mov eax, 0x23f76e0
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4044b8
sub eax, edx
xor esi, esi
xor ecx, ecx
xor edx, edx
cmp esi, edi
jl 0x4044ed
jg 0x4044d1
cmp eax, edi
jbe 0x4044ed
cmp byte [ecx + 0x23f76e0], 0x3a
je 0x4045f8
add ecx, 1
adc edx, edi
cmp edx, esi
jl 0x4044d1
jg 0x4044ed
cmp ecx, eax
jb 0x4044d1
mov al, byte [0x23f76e0]
cmp al, 0x5c
jne 0x404503
cmp byte [0x23f76e1], al
jne 0x40450b
jmp 0x4045f8
cmp al, 0x2f
je 0x4045f8
mov eax, 0x24f9700
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x404513
push edi
push 0x800
push edi
push 0x800
push edi
sub eax, edx
push eax
push edi
push edi
push edi
push edi
push 0x24f9700
push 0x253a740
call fcn.0040b150
mov eax, 0x23f76e0
add esp, 0x30
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x404548
sub eax, ecx
mov ecx, eax
mov eax, 0x253a740
lea esi, [eax + 1]
jmp 0x404560
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x404560
push edi
push 0x800
push edi
push 0x800
push edi
push ecx
push edi
push edi
push edi
sub eax, esi
push eax
push 0x23f76e0
push 0x253a740
call fcn.0040b150
push 0x23f76e0
push str._s_changed_to
push 0xc3e
push str.main
push 4
call fcn.00401210
mov eax, 0x253a740
add esp, 0x44
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x4045b0
push edi
push 0x800
push edi
push 0x800
push edi
sub eax, ecx
push eax
push edi
push edi
push edi
push edi
push 0x253a740
push 0x23f76e0
call fcn.0040b150
push 0x23f76e0
push str.this__s
push 0xc40
push str.main
push 4
call fcn.00401210
add esp, 0x44
push 0x23f76e0
push str.Trying_to_create_directory_for___flattenbuildto_s
push 0xc45
push str.main
push 4
call fcn.00401210
add esp, 0x14
push 0x1ff
push 0x23f76e0
call fcn.00428968
add esp, 8
cmp eax, 0xffffffff
jne 0x404639
push str.Already_exists
push 0xc48
jmp 0x404643
push str.Created_successfully
push 0xc4a
push str.main
push 4
call fcn.00401210
add esp, 0x10
push 0x800
push edi
push 0x23f86e0
call fcn.0041c990
mov eax, 0x23f76e0
add esp, 0xc
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x404670
sub eax, edx
mov ecx, eax
mov eax, 0x23f86e0
lea esi, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x404683
push edi
push 0x800
push edi
push 0x800
push edi
push ecx
push edi
push edi
push edi
sub eax, esi
push eax
push 0x23f76e0
push 0x23f86e0
call fcn.0040b150
add esp, 0x30
or eax, edx
je 0x404b9d
mov eax, 0x3b86b28
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4046c0
sub eax, edx
mov edx, eax
mov eax, 0x23f86e0
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4046d3
xor ecx, ecx
push ecx
push edx
push edi
push 0x800
push ecx
push edx
push edi
push edi
push edi
sub eax, esi
push eax
push 0x3b86b28
push 0x23f86e0
call fcn.0040b150
add esp, 0x30
or eax, edx
je 0x404bd2
mov eax, 0x23f86e0
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x404710
push edi
push 1
push edi
push 0x800
push edi
push 1
push edi
push edi
push edi
sub eax, edx
push eax
push 0x42c8e8
push 0x23f86e0
call fcn.0040b150
add esp, 0x30
or eax, edx
je 0x404c0d
push 0x3b86b28
push 0x23f86e0
push str.Trying_to_create_directory__s_since_fh.attrs.MemoryName_is__s
push 0xc62
push str.main
push 4
call fcn.00401210
push 0x1ff
push 0x23f86e0
call fcn.00428968
add esp, 0x20
cmp eax, 0xffffffff
jne 0x404786
push str.Already_exists
push 0xc65
jmp 0x404790
push str.Created_successfully
push 0xc67
push str.main
push 4
call fcn.00401210
add esp, 0x10
push str.User_wants_FLATTEN_BUILD___This_will_be_a_SIMULATE___Not_reading_writing_from_a_port_n
push 0xc6a
push str.main
push 5
call fcn.00401210
add esp, 0x10
mov byte [0x2389c43], 1
mov byte [0x2389cdf], 1
mov byte [0x2389ce1], 1
mov byte [0x2389bc9], 0
jmp 0x4048fb
mov eax, 0x238b640
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4047e1
sub eax, edx
cmp eax, 9
ja 0x4047f4
mov eax, 9
push eax
push str.wipefirst
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x404892
push 0x3fff
lea edx, [esp + 0x8bd]
push edi
push edx
mov byte [esp + 0x8c4], al
call fcn.0041c990
add esp, 0xc
push str.User_wants_wipefirst___Will_write_zeros_for_the_first_16KB_of_every__program__tag_n
push 0xc74
push str.main
push 5
call fcn.00401210
mov eax, str.Zeros16KB.bin
add esp, 0x10
mov byte [0x2389cdd], 1
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x404854
sub eax, ecx
push eax
mov edx, 0x42c9e4
mov ecx, str.Zeros16KB.bin
call fcn.00410ed0
add esp, 4
mov esi, eax
push esi
push 1
lea eax, [esp + 0x8c0]
push 0x4000
push eax
call fcn.004197d9
push esi
call fcn.00419df4
add esp, 0x14
jmp 0x4048fb
mov eax, 0x238b640
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4048a0
sub eax, edx
cmp eax, 0xa
ja 0x4048b3
mov eax, 0xa
push eax
push str.erasefirst
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x4048fb
push str.User_wants_erasefirst___Will_issue__erase__tag_before_every__program__tag_n
push 0xc7f
push str.main
push 5
call fcn.00401210
mov al, byte [0x3b86b28]
add esp, 0x10
mov byte [0x2389cde], 1
cmp al, 0x6e
je 0x4048fb
cmp al, 0x4e
jne 0x404c32
mov eax, dword [esp + 0x24]
add ebx, 1
adc eax, edi
mov dword [esp + 0x24], eax
cmp eax, dword [esp + 0x44]
jl 0x404143
jg 0x40491e
cmp ebx, dword [esp + 0x40]
jb 0x404143
call fcn.004146a0
xor ebx, ebx
xor esi, esi
cmp dword [0x2389cb4], ebx
jl 0x404f8f
jg 0x404941
cmp dword [0x2389cb0], ebx
jbe 0x404f8f
mov eax, esi
imul eax, eax, 0x890
mov cl, byte [eax + 0x238c6c8]
cmp byte [0x3b86b28], cl
je 0x40495b
test cl, cl
jne 0x4049c1
lea edi, [eax + 0x238be88]
call fcn.0040fe30
test eax, eax
jne 0x4049c1
mov eax, edi
lea edx, [eax + 1]
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x404970
mov ecx, dword [0x2389bd8]
push 0
push 0x800
push 0
push 0x800
push 0
sub eax, edx
push eax
push 0
push 0
push 0
push 0
shl ecx, 0xb
add ecx, 0x273a800
push edi
push ecx
call fcn.0040b150
add esp, 0x30
or eax, edx
je 0x404c5a
add dword [0x2389bd8], 1
adc dword [0x2389bdc], 0
mov eax, dword [0x2389cb4]
add esi, 1
adc ebx, 0
cmp ebx, eax
jl 0x404941
mov ecx, dword [0x2389cb0]
jg 0x4049e4
cmp esi, ecx
jb 0x404941
xor edi, edi
cmp eax, edi
jl 0x404f8f
jg 0x4049f8
cmp ecx, edi
jbe 0x404f8f
mov dword [esp + 0x20], edi
mov dword [esp + 0x24], edi
cmp eax, edi
jl 0x404d20
jg 0x404a12
cmp ecx, edi
jbe 0x404d20
mov eax, dword [0x2389be0]
jmp 0x404a20
mov esi, edi
imul esi, esi, 0x890
cmp byte [esi + 0x238c6c9], 0x72
jne 0x404cf4
mov cl, byte [esi + 0x238c6c8]
cmp byte [0x3b86b28], cl
je 0x404a4b
test cl, cl
jne 0x404cf4
cmp byte [0x23893b0], 0
je 0x404c92
lea edi, [esi + 0x238be88]
mov ecx, edi
lea ebx, [ecx + 1]
mov dl, byte [ecx]
inc ecx
test dl, dl
jne 0x404a63
push 0
push 0x800
push 0
push 0x800
push 0
sub ecx, ebx
push ecx
push 0
push 0
push 0
push 0
shl eax, 0xb
add eax, 0x5c10f80
push edi
push eax
call fcn.0040b150
add esp, 0x30
or eax, edx
je 0x404e7f
lea ebx, [esi + 0x238be48]
mov eax, ebx
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x404ab0
sub eax, edx
mov ecx, eax
mov eax, edi
lea esi, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x404ac0
push 0
push 0x800
push 0
push 0x800
push 0
push ecx
mov ecx, dword [0x2389be0]
push 0
push 0
push 0
sub eax, esi
push eax
shl ecx, 0xb
add ecx, 0x5c10f80
push ebx
push ecx
call fcn.0040b150
add esp, 0x30
or eax, edx
jne 0x404cdc
mov eax, dword [esp + 0x20]
imul eax, eax, 0x890
lea edx, [eax + 0x238be48]
mov eax, edx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x404b17
mov ecx, dword [0x2389be4]
push ecx
mov ecx, dword [0x2389be0]
push ecx
sub eax, esi
push eax
push edx
push str.Failed_to_copy_string__s_of_length__i_into_XMLFileTable__i_
push 0xcc5
push str.main
push 1
call fcn.00401210
add esp, 0x20
mov ecx, dword [esp + 0x48bc]
pop edi
pop esi
pop ebx
xor ecx, esp
mov eax, 1
call fcn.00417675
mov esp, ebp
pop ebp
ret
mov eax, 0x3b8c560
lea edx, [eax + 1]
jmp 0x404b70
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x404b70
sub eax, edx
push eax
push 0x3b8c560
push str.Failed_to_copy__s_of_length__lld_bytes_into_flattenbuildto
push 0xc2f
push str.main
push 1
call fcn.00401210
add esp, 0x18
jmp 0x4036cd
mov eax, 0x23f76e0
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x404ba5
sub eax, edx
push eax
push 0x23f76e0
push str.Failed_to_copy_string__s_of_length__lld_bytes_into_flattenbuildvariant
push 0xc52
push str.main
push 1
call fcn.00401210
add esp, 0x18
jmp 0x4036cd
mov eax, 0x3b86b28
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x404be0
sub eax, edx
push eax
push 0x3b86b28
push str.Failed_to_copy_fh.attrs.MemoryName_string__s_of_length__lld_bytes_into_flattenbuildvariant
push 0xc58
push str.main
push 1
call fcn.00401210
add esp, 0x18
jmp 0x4036cd
push 1
push 0x42c8e8
push str.Failed_to_copy_string__s_of_length__lld_bytes_into_flattenbuildvariant
push 0xc5e
push str.main
push 1
call fcn.00401210
add esp, 0x18
jmp 0x4036cd
push 0x3b86b28
push 0x3b86b28
push str._n_nIt_looks_like_you_chose___erasefirst_with_MemoryName_s._nThis_is_a___memorynameNAND_feature___n_n_tWhat_you_are_asking_to_do_here_is_issue_an__erase__command_for_every__program__tag_n_tBut_on__s_this_will_have_the_effect_of_erasing_the_entire_device_every_time_for_each__program__tag._n_tAt_a_high_level_this_means_only_your_last_file_will_be_programmed___n_n_nYou_dont_want_this_feature_and_you_are_looking_for_either___wipefirst_or___erase_n_n_n_n_t_tSomething_like:____fh_loader.exe___erase___port_etc_etc_n_n_n_n_t_t____________Or:____fh_loader.exe___wipefirst___port_etc_etc_n_n
push 0xc8e
push str.main
push 1
call fcn.00401210
add esp, 0x18
jmp 0x4036cd
mov edx, dword [0x2389bdc]
imul esi, esi, 0x890
mov eax, dword [0x2389bd8]
push edx
push eax
add esi, 0x238be88
push esi
push str.Failed_to_copy_string__s_into_search_path__i_
push 0xca6
push str.main
push 1
call fcn.00401210
add esp, 0x1c
jmp 0x404b49
lea esi, [esi + 0x238be48]
mov ecx, esi
lea edi, [ecx + 1]
lea ecx, [ecx]
mov dl, byte [ecx]
inc ecx
test dl, dl
jne 0x404ca0
push 0
push 0x800
push 0
push 0x800
push 0
sub ecx, edi
push ecx
push 0
push 0
push 0
push 0
shl eax, 0xb
add eax, 0x5c10f80
push esi
push eax
call fcn.0040b150
add esp, 0x30
or eax, edx
je 0x404ebc
mov eax, dword [0x2389be0]
mov edi, dword [esp + 0x20]
add eax, 1
adc dword [0x2389be4], 0
mov dword [0x2389be0], eax
mov ecx, dword [esp + 0x24]
add edi, 1
adc ecx, 0
mov dword [esp + 0x20], edi
mov dword [esp + 0x24], ecx
cmp ecx, dword [0x2389cb4]
jl 0x404a20
jg 0x404d20
cmp edi, dword [0x2389cb0]
jb 0x404a20
call fcn.0040fed0
xor ebx, ebx
xor eax, eax
xor ecx, ecx
mov dword [0x2389be0], eax
mov dword [0x2389be4], ebx
mov dword [esp + 0x20], ecx
mov dword [esp + 0x24], ebx
cmp dword [0x2389cb4], ebx
jl 0x404f7e
jg 0x404d60
cmp dword [0x2389cb0], ebx
jbe 0x404f7e
jmp 0x404d60
mov esi, ecx
imul esi, esi, 0x890
cmp byte [esi + 0x238c6c9], 0x70
jne 0x404f53
mov dl, byte [esi + 0x238c6c8]
cmp byte [0x3b86b28], dl
je 0x404d8b
test dl, dl
jne 0x404f53
cmp byte [0x23893b0], 0
je 0x404ef9
lea edi, [esi + 0x238be88]
mov ecx, edi
lea ebx, [ecx + 1]
mov dl, byte [ecx]
inc ecx
test dl, dl
jne 0x404da3
push 0
push 0x800
push 0
push 0x800
push 0
sub ecx, ebx
push ecx
push 0
push 0
push 0
push 0
shl eax, 0xb
add eax, 0x5c10f80
push edi
push eax
call fcn.0040b150
add esp, 0x30
or eax, edx
je 0x40507d
lea ebx, [esi + 0x238be48]
mov eax, ebx
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x404df0
sub eax, edx
mov ecx, eax
mov eax, edi
lea esi, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x404e00
mov edx, dword [0x2389be0]
push 0
push 0x800
push 0
push 0x800
push 0
push ecx
push 0
push 0
push 0
sub eax, esi
push eax
shl edx, 0xb
add edx, 0x5c10f80
push ebx
push edx
call fcn.0040b150
add esp, 0x30
or eax, edx
jne 0x404f39
mov eax, dword [esp + 0x20]
imul eax, eax, 0x890
lea edx, [eax + 0x238be48]
mov eax, edx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x404e57
mov ecx, dword [0x2389be4]
push ecx
mov ecx, dword [0x2389be0]
push ecx
sub eax, esi
push eax
push edx
push str.Failed_to_copy_string__s_of_length__i_into_XMLFileTable__i_
push 0xced
jmp 0x404b3a
mov eax, dword [esp + 0x20]
imul eax, eax, 0x890
lea edx, [eax + 0x238be48]
mov eax, edx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x404e94
mov ecx, dword [0x2389be4]
push ecx
mov ecx, dword [0x2389be0]
push ecx
sub eax, esi
push eax
push edx
push str.Failed_to_copy_string__s_of_length__i_into_XMLFileTable__i_
push 0xcbf
jmp 0x404b3a
mov eax, dword [esp + 0x20]
imul eax, eax, 0x890
lea edx, [eax + 0x238be48]
mov eax, edx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x404ed1
mov ecx, dword [0x2389be4]
push ecx
mov ecx, dword [0x2389be0]
push ecx
sub eax, esi
push eax
push edx
push str.Failed_to_copy_string__s_of_length__i_into_XMLFileTable__i_
push 0xccd
jmp 0x404b3a
lea esi, [esi + 0x238be48]
mov ecx, esi
lea edi, [ecx + 1]
mov dl, byte [ecx]
inc ecx
test dl, dl
jne 0x404f04
push ebx
push 0x800
push ebx
push 0x800
push ebx
sub ecx, edi
push ecx
push ebx
push ebx
push ebx
push ebx
shl eax, 0xb
add eax, 0x5c10f80
push esi
push eax
call fcn.0040b150
add esp, 0x30
or eax, edx
je 0x4050ba
mov eax, dword [0x2389be0]
mov ecx, dword [esp + 0x20]
add eax, 1
adc dword [0x2389be4], 0
mov dword [0x2389be0], eax
xor ebx, ebx
mov edx, dword [esp + 0x24]
add ecx, 1
adc edx, ebx
mov dword [esp + 0x20], ecx
mov dword [esp + 0x24], edx
cmp edx, dword [0x2389cb4]
jl 0x404d60
jg 0x404f7e
cmp ecx, dword [0x2389cb0]
jb 0x404d60
call fcn.0040fed0
mov dword [0x2389be0], ebx
mov dword [0x2389be4], ebx
cmp dword [esp + 0x2c], 0
mov eax, dword [esp + 0x28]
mov ecx, 1
mov dword [esp + 0x20], ecx
mov dword [esp + 0x24], 0
jl 0x4063ff
jg 0x404fb9
cmp eax, ecx
jbe 0x4063ff
xor ebx, ebx
mov eax, dword [esp + 0x34]
push 0x3b8c560
push ecx
call fcn.00401610
mov eax, 0x238b640
add esp, 8
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x404fd5
sub eax, edx
cmp eax, 5
ja 0x404fe8
mov eax, 5
push eax
push str.port
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x4050f8
mov eax, 0x3b8c560
lea edx, [eax + 1]
jmp 0x405010
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x405010
push ebx
push 0x800
push ebx
push 0x800
push ebx
sub eax, edx
push eax
push ebx
push ebx
push ebx
push ebx
push 0x3b8c560
push 0x23f6ee0
call fcn.0040b150
add esp, 0x30
or eax, edx
jne 0x406381
mov eax, 0x3b8c560
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x405050
sub eax, edx
push eax
push 0x3b8c560
push str.Failed_to_copy__s_of_length__lld_bytes_into_port_name
push 0xd13
push str.main
push 1
call fcn.00401210
add esp, 0x18
jmp 0x4036cd
mov eax, dword [esp + 0x20]
imul eax, eax, 0x890
lea edx, [eax + 0x238be48]
mov eax, edx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x405092
mov ecx, dword [0x2389be4]
push ecx
mov ecx, dword [0x2389be0]
push ecx
sub eax, esi
push eax
push edx
push str.Failed_to_copy_string__s_of_length__i_into_XMLFileTable__i_
push 0xce7
jmp 0x404b3a
mov eax, dword [esp + 0x20]
imul eax, eax, 0x890
lea edx, [eax + 0x238be48]
mov eax, edx
lea esi, [eax + 1]
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4050d0
mov ecx, dword [0x2389be4]
push ecx
mov ecx, dword [0x2389be0]
push ecx
sub eax, esi
push eax
push edx
push str.Failed_to_copy_string__s_of_length__i_into_XMLFileTable__i_
push 0xcf5
jmp 0x404b3a
mov eax, 0x238b640
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x405100
sub eax, edx
cmp eax, 9
ja 0x405113
mov eax, 9
push eax
push str.loglevel
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x4051fc
push 0x3b8c560
call fcn.00418f05
cdq
mov ecx, eax
add esp, 4
or ecx, edx
jne 0x405167
push str.User_requested_minimal_logging_with___loglevel0
push 0xd1f
push str.main
push 2
call fcn.00401210
add esp, 0x10
mov byte [0x436422], 2
jmp 0x406381
cmp eax, 2
jne 0x40519b
cmp edx, ebx
jne 0x40519b
push str.User_requested_verbose_logging_with___loglevel2
push 0xd24
push str.main
push eax
call fcn.00401210
add esp, 0x10
mov byte [0x436422], 5
mov byte [0x23893ab], 1
jmp 0x406381
cmp eax, 3
jne 0x4051d7
cmp edx, ebx
jne 0x4051d7
push str.User_requested_super_verbose_logging_with___loglevel3
push 0xd2a
push str.main
push 2
call fcn.00401210
add esp, 0x10
mov byte [0x436422], 5
mov byte [0x2389c41], 1
mov byte [0x23893ab], 1
jmp 0x406381
push str.User_requested_semi_verbose_logging_with___loglevel1___This_is_default
push 0xd31
push str.main
push 2
call fcn.00401210
add esp, 0x10
mov byte [0x436422], 4
jmp 0x406381
mov eax, 0x238b640
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x405204
sub eax, edx
cmp eax, 0xc
ja 0x405217
mov eax, 0xc
push eax
push str.interactive
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x40526a
push str.User_wants_INTERACTIVE_n
push 0xd39
push str.main
push 5
call fcn.00401210
push 0x3b8c560
call fcn.00418f05
add esp, 0x14
mov byte [0x2389cd9], al
cmp al, 2
jbe 0x406381
mov byte [0x2389cd9], 2
jmp 0x406381
mov eax, 0x238b640
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x405272
sub eax, edx
cmp eax, 4
ja 0x405285
mov eax, 4
push eax
push str.lun
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x40532e
push 0x3b8c560
push str.User_is_specifying_lun_s_n
push 0xd43
push str.main
push 5
call fcn.00401210
add esp, 0x14
push 0x3b8c560
call fcn.00418f05
cdq
add esp, 4
mov esi, edx
push esi
push eax
push str.MyLun_lld_n
push 0xd45
push str.main
push 5
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], esi
call fcn.00401210
add esp, 0x18
cmp esi, ebx
jl 0x406381
jg 0x405306
cmp dword [esp + 0x50], 7
jbe 0x406381
mov edx, dword [esp + 0x54]
mov eax, dword [esp + 0x50]
push edx
push eax
push str.In_most_cases_devices_only_have_LUN_0_1_2_3_4_5_6_7._You_have_specified_to_use_LUN__lld_and_this_might_fail_n_n
push 0xd48
push str.main
push 3
call fcn.00401210
add esp, 0x18
jmp 0x406381
mov eax, 0x238b640
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x405336
sub eax, edx
cmp eax, 0xc
ja 0x405349
mov eax, 0xc
push eax
push str.num_sectors
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x4053c2
push 0x3b8c560
push str.User_is_specifying_num_sectors_s_n
push 0xd50
push str.main
push 5
call fcn.00401210
add esp, 0x14
lea ecx, [esp + 0x4f]
push ecx
push 0x3b8c560
call fcn.0040b2f0
add esp, 8
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], edx
cmp byte [esp + 0x4f], bl
je 0x4063ae
push edx
push eax
push str.MyNumSectors_lld_n
push 0xd5a
push str.main
push 5
call fcn.00401210
add esp, 0x18
jmp 0x406381
mov eax, 0x238b640
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4053d0
sub eax, edx
cmp eax, 7
ja 0x4053e3
mov eax, 7
push eax
push 0x42ab24
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x40545c
push 0x3b8c560
push str.User_is_specifying_trials_s_n
push 0xd61
push str.main
push 5
call fcn.00401210
add esp, 0x14
lea edx, [esp + 0x4e]
push edx
push 0x3b8c560
call fcn.0040b2f0
add esp, 8
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], edx
cmp byte [esp + 0x4e], bl
je 0x4063c9
push edx
push eax
push str.MyTrials_lld_n
push 0xd6b
push str.main
push 5
call fcn.00401210
add esp, 0x18
jmp 0x406381
mov eax, 0x238b640
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x405464
sub eax, edx
cmp eax, 0xd
ja 0x405477
mov eax, 0xd
push eax
push 0x42ab48
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x4054f0
push 0x3b8c560
push str.User_is_specifying_start_sector_s_n
push 0xd72
push str.main
push 5
call fcn.00401210
add esp, 0x14
lea eax, [esp + 0x4d]
push eax
push 0x3b8c560
call fcn.0040b2f0
add esp, 8
mov dword [esp + 0x58], eax
mov dword [esp + 0x5c], edx
cmp byte [esp + 0x4d], bl
je 0x4063e4
push edx
push eax
push str.MyStartSector_lld_n
push 0xd7c
push str.main
push 5
call fcn.00401210
add esp, 0x18
jmp 0x406381
mov eax, 0x238b640
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4054f8
sub eax, edx
cmp eax, 7
ja 0x40550b
mov eax, 7
push eax
push str.noreset
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x40552d
mov byte [0x2389bc9], bl
jmp 0x406381
mov eax, 0x238b640
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x405535
sub eax, edx
cmp eax, 5
ja 0x405548
mov eax, 5
push eax
push str.reset
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x40556b
mov byte [0x2389bc9], 1
jmp 0x406381
mov eax, 0x238b640
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x405573
sub eax, edx
cmp eax, 0xe
ja 0x405586
mov eax, 0xe
push eax
push str.signeddigests
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x4055d7
mov eax, 0x3b8c560
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4055a5
push ebx
push 0x800
push ebx
push 0x800
push ebx
sub eax, edx
push eax
push ebx
push ebx
push ebx
push ebx
push 0x3b8c560
push 0x23f7ee0
call fcn.0040b150
add esp, 0x30
jmp 0x406381
mov eax, 0x238b640
lea edx, [eax + 1]
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4055e0
sub eax, edx
cmp eax, 0xf
ja 0x4055f3
mov eax, 0xf
push eax
push str.chaineddigests
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x405644
mov eax, 0x3b8c560
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x405612
push ebx
push 0x800
push ebx
push 0x800
push ebx
sub eax, edx
push eax
push ebx
push ebx
push ebx
push ebx
push 0x3b8c560
push 0x2539f40
call fcn.0040b150
add esp, 0x30
jmp 0x406381
mov eax, 0x238b640
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x405650
sub eax, edx
cmp eax, 0x13
ja 0x405663
mov eax, 0x13
push eax
push str.setactivepartition
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x40587e
push 0x100000
push ebx
push 0x277a800
call fcn.0041c990
mov ecx, 0xa
mov esi, 0x42afb8
mov edi, 0x277a800
rep movsd dword es:[edi], dword [esi]
mov eax, 0x277a800
add esp, 0xc
movsb byte es:[edi], byte [esi]
lea edx, [eax + 1]
jmp 0x4056b0
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4056b0
sub eax, edx
mov ecx, 0xffff7
sub ecx, eax
cmp ecx, 7
jb 0x4056f1
mov edx, dword [str._data__n]
mov cx, word [0x42c000]
mov dword [eax + 0x277a800], edx
mov dl, byte [0x42c002]
mov word [eax + 0x277a804], cx
mov byte [eax + 0x277a806], dl
mov byte [eax + 0x277a807], bl
mov eax, 0x277a800
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x405700
sub eax, edx
mov esi, eax
mov eax, 0xffff7
sub eax, esi
cmp eax, 0x19
jb 0x405733
push 0x19
lea ecx, [esi + 0x277a800]
push str._setbootablestoragedrive
push ecx
call fcn.004207b0
add esp, 0xc
mov byte [esi + 0x277a819], bl
push 0x3b8c560
call fcn.00418f05
add esp, 4
push eax
push str.value__i_
push 0x100000
push 0x253a740
call fcn.00418f10
mov eax, 0x277a800
add esp, 0x10
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x405760
sub eax, edx
mov edi, eax
mov eax, 0x253a740
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x405773
sub eax, edx
mov edx, 0xffff7
mov esi, eax
sub edx, edi
cmp esi, edx
ja 0x4057a5
push esi
lea eax, [edi + 0x277a800]
push 0x253a740
push eax
call fcn.004207b0
add esp, 0xc
mov byte [edi + esi + 0x277a800], bl
mov eax, 0x277a800
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4057b0
sub eax, edx
mov ecx, 0xffff7
sub ecx, eax
cmp ecx, 0xb
jb 0x4057fd
mov edx, dword [str.___n__data__n]
mov ecx, dword [0x42d048]
mov dword [eax + 0x277a800], edx
mov dx, word [0x42d04c]
mov dword [eax + 0x277a804], ecx
mov cl, byte [0x42d04e]
mov word [eax + 0x277a808], dx
mov byte [eax + 0x277a80a], cl
mov byte [eax + 0x277a80b], bl
mov eax, 0x277a800
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x405805
push ebx
push 0x100000
push ebx
push 0x1000
push ebx
sub eax, edx
mov edx, dword [0x436428]
push eax
push ebx
push ebx
push ebx
push ebx
shl edx, 0xc
add edx, 0x3cccd60
push 0x277a800
push edx
call fcn.0040b150
mov eax, dword [0x43642c]
add esp, 0x30
add dword [0x436428], 1
adc eax, ebx
mov dword [0x43642c], eax
cmp eax, ebx
jg 0x40586a
jl 0x406381
cmp dword [0x436428], 0x1f40
jb 0x406381
push 0x3cccd60
push str.1._Too_many_XML_files_in_XMLStringTable__max_is__d
push 0xda0
jmp 0x4036be
mov eax, 0x238b640
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x405886
sub eax, edx
cmp eax, 0xf
ja 0x405899
mov eax, 0xf
push eax
push str.getstorageinfo
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x405ace
push 0x100000
push ebx
push 0x277a800
call fcn.0041c990
mov ecx, 0xa
mov esi, 0x42afb8
mov edi, 0x277a800
rep movsd dword es:[edi], dword [esi]
mov eax, 0x277a800
add esp, 0xc
movsb byte es:[edi], byte [esi]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4058e1
sub eax, edx
mov ecx, 0xffff7
sub ecx, eax
cmp ecx, 7
jb 0x405922
mov edx, dword [str._data__n]
mov cx, word [0x42c000]
mov dword [eax + 0x277a800], edx
mov dl, byte [0x42c002]
mov word [eax + 0x277a804], cx
mov byte [eax + 0x277a806], dl
mov byte [eax + 0x277a807], bl
mov eax, 0x277a800
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x405930
sub eax, edx
mov ecx, 0xffff7
sub ecx, eax
cmp ecx, 0x10
jb 0x40597b
mov edx, dword [str._getstorageinfo]
mov ecx, dword [0x42d054]
mov dword [eax + 0x277a800], edx
mov edx, dword [0x42d058]
mov dword [eax + 0x277a804], ecx
mov ecx, dword [0x42d05c]
mov dword [eax + 0x277a808], edx
mov dword [eax + 0x277a80c], ecx
mov byte [eax + 0x277a810], bl
push 0x3b8c560
call fcn.00418f05
add esp, 4
push eax
push str.physical_partition_number__i_
push 0x100000
push 0x253a740
call fcn.00418f10
mov eax, 0x277a800
add esp, 0x10
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4059a8
sub eax, edx
mov edi, eax
mov eax, 0x253a740
lea edx, [eax + 1]
jmp 0x4059c0
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4059c0
sub eax, edx
mov edx, 0xffff7
mov esi, eax
sub edx, edi
cmp esi, edx
ja 0x4059f2
push esi
lea eax, [edi + 0x277a800]
push 0x253a740
push eax
call fcn.004207b0
add esp, 0xc
mov byte [edi + esi + 0x277a800], bl
mov eax, 0x277a800
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x405a00
sub eax, edx
mov ecx, 0xffff7
sub ecx, eax
cmp ecx, 0xb
jb 0x405a4d
mov edx, dword [str.___n__data__n]
mov ecx, dword [0x42d048]
mov dword [eax + 0x277a800], edx
mov dx, word [0x42d04c]
mov dword [eax + 0x277a804], ecx
mov cl, byte [0x42d04e]
mov word [eax + 0x277a808], dx
mov byte [eax + 0x277a80a], cl
mov byte [eax + 0x277a80b], bl
mov eax, 0x277a800
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x405a55
push ebx
push 0x100000
push ebx
push 0x1000
push ebx
sub eax, edx
mov edx, dword [0x436428]
push eax
push ebx
push ebx
push ebx
push ebx
shl edx, 0xc
add edx, 0x3cccd60
push 0x277a800
push edx
call fcn.0040b150
mov eax, dword [0x43642c]
add esp, 0x30
add dword [0x436428], 1
adc eax, ebx
mov dword [0x43642c], eax
cmp eax, ebx
jg 0x405aba
jl 0x406381
cmp dword [0x436428], 0x1f40
jb 0x406381
push 0x3cccd60
push str.1._Too_many_XML_files_in_XMLStringTable__max_is__d
push 0xdb5
jmp 0x4036be
mov eax, 0x238b640
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x405ad6
sub eax, edx
cmp eax, 0xc
ja 0x405ae9
mov eax, 0xc
push eax
push str.dontsorttags
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x405b0b
mov byte [0x436421], bl
jmp 0x406381
mov eax, 0x238b640
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x405b13
sub eax, edx
cmp eax, 0x13
ja 0x405b26
mov eax, 0x13
push eax
push str.showdigestperpacket
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x405b50
mov byte [0x23893aa], 1
mov byte [0x23893ab], 1
jmp 0x406381
mov eax, 0x238b640
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x405b58
sub eax, edx
cmp eax, 0x11
ja 0x405b6b
mov eax, 0x11
push eax
push str.showdigestperfile
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x405baa
push 0x800
mov edx, 0x42b604
mov ecx, str.DigestsPerFile.txt
mov byte [0x23893ad], 1
call fcn.00410ed0
add esp, 4
mov dword [0x2389c04], eax
jmp 0x406381
mov eax, 0x238b640
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x405bb2
sub eax, edx
cmp eax, 0x16
ja 0x405bc5
mov eax, 0x16
push eax
push str.showpercentagecomplete
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x405be8
mov byte [0x23893ac], 1
jmp 0x406381
mov eax, 0x238b640
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x405bf0
sub eax, edx
cmp eax, 0x12
ja 0x405c03
mov eax, 0x12
push eax
push str.createcommandtrace
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x405c26
mov byte [0x23893ab], 1
jmp 0x406381
mov eax, 0x238b640
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x405c30
sub eax, edx
cmp eax, 8
ja 0x405c43
mov eax, 8
push eax
push str.sendxml
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x405ca2
mov eax, dword [0x2389be0]
push eax
push 0x5c10f80
push ebx
push 0x800
push 0x3b8c560
call fcn.0040ef20
mov dword [0x2389be0], eax
shl eax, 0xb
add esp, 0x14
mov dword [0x2389be4], edx
mov byte [eax + 0x5c10f80], bl
call fcn.0040fed0
mov dword [0x2389be0], ebx
mov dword [0x2389be4], ebx
jmp 0x406381
mov eax, 0x238b640
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x405cb0
sub eax, edx
cmp eax, 7
ja 0x405cc3
mov eax, 7
push eax
push str.verbose
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x405cff
push str.User_wants_FIREHOSE_VERBOSE___Target_will_log_much_of_what_it_is_doing_n
push 0xde6
push str.main
push 5
call fcn.00401210
add esp, 0x10
mov byte [0x2389cdc], 1
jmp 0x406381
mov eax, 0x238b640
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x405d07
sub eax, edx
cmp eax, 0xd
ja 0x405d1a
mov eax, 0xd
push eax
push str.zlpawarehost
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x405d8b
push 0x3b8c560
call fcn.00418f05
cdq
add esp, 4
mov dword [0x3a85a70], eax
mov dword [0x3a85a74], edx
cmp edx, ebx
jl 0x405d6b
jg 0x405d59
cmp eax, 1
jbe 0x405d6b
mov eax, 1
xor edx, edx
mov dword [0x3a85a70], eax
mov dword [0x3a85a74], edx
push edx
push eax
push str.User_set_ZLPAWAREHOST_to__lld_n
push 0xdf1
push str.main
push 5
call fcn.00401210
add esp, 0x18
jmp 0x406381
mov eax, 0x238b640
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x405d93
sub eax, edx
cmp eax, 0x12
ja 0x405da6
mov eax, 0x12
push eax
push str.verify_programming
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x405de2
push str.User_wants_verify_programming_n
push 0xdf6
push str.main
push 5
call fcn.00401210
add esp, 0x10
mov byte [0x2389c40], 1
jmp 0x406381
mov eax, 0x238b640
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x405df0
sub eax, edx
cmp eax, 0xd
ja 0x405e03
mov eax, 0xd
push eax
push str.testvipimpact
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x405e3f
push str.User_wants_testvipimpact_n
push 0xdfc
push str.main
push 5
call fcn.00401210
add esp, 0x10
mov byte [0x2389bcb], 1
jmp 0x406381
mov eax, 0x238b640
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x405e47
sub eax, edx
cmp eax, 8
ja 0x405e5a
mov eax, 8
push eax
push str.simulate
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x405e96
push str.User_wants_SIMULATION___Not_reading_writing_from_a_port_n
push 0xe02
push str.main
push 5
call fcn.00401210
add esp, 0x10
mov byte [0x2389c43], 1
jmp 0x406381
mov eax, 0x238b640
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x405ea0
sub eax, edx
cmp eax, 0xd
ja 0x405eb3
mov eax, 0xd
push eax
push str.createdigests
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x405efd
push str.User_wants_SIMULATION__CreateDigests____Not_reading_writing_from_a_port_n
push 0xe08
push str.main
push 5
call fcn.00401210
add esp, 0x10
mov byte [0x2389cdb], 1
mov byte [0x2389c43], 1
mov byte [0x23893aa], 1
jmp 0x406381
mov eax, 0x238b640
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x405f05
sub eax, edx
cmp eax, 9
ja 0x405f18
mov eax, 9
push eax
push str.skipwrite
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x405f5d
push str.User_wants_skipwrite___Will_not_commit_to_flash._Use_this_to_benchmark_USB_speed_n
push 0xe10
push str.main
push 5
call fcn.00401210
add esp, 0x10
mov dword [0x3a85a78], 1
mov dword [0x3a85a7c], ebx
jmp 0x406381
mov eax, 0x238b640
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x405f65
sub eax, edx
cmp eax, 9
ja 0x405f78
mov eax, 9
push eax
push str.skippatch
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x405fb3
push str.User_wants_skippatch__LOAD_PATCH_PROGRAM_FILES0____Will_issue_any__patch_commands_n
push 0xe16
push str.main
push 5
call fcn.00401210
add esp, 0x10
mov byte [0x4363fd], bl
jmp 0x406381
mov eax, 0x238b640
lea edx, [eax + 1]
jmp 0x405fc0
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x405fc0
sub eax, edx
cmp eax, 0xf
ja 0x405fd3
mov eax, 0xf
push eax
push str.skipstorageinit
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x406018
push str.User_wants_skipstorageinit___Will_not_initialize_storage_with__configure__i.e._handleConfigure___n
push 0xe1c
push str.main
push 5
call fcn.00401210
add esp, 0x10
mov dword [0x3a85ac0], 1
mov dword [0x3a85ac4], ebx
jmp 0x406381
mov eax, 0x238b640
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x406020
sub eax, edx
cmp eax, 0xd
ja 0x406033
mov eax, 0xd
push eax
push str.readbogusdata
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x40606f
push str.User_wants_ReadBogusDataBeforeSendingConfigure___Will_attempt_to_read_4KB_of_data_before_sending__configure__command_n
push 0xe22
push str.main
push 5
call fcn.00401210
add esp, 0x10
mov byte [0x2389c42], 1
jmp 0x406381
mov eax, 0x238b640
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x406077
sub eax, edx
cmp eax, 0x11
ja 0x40608a
mov eax, 0x11
push eax
push str.skipharddriveread
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x4060c6
push str.User_wants_skipharddriveread___Will_get_filesizes_from_files__but_data_will_be_garbage_n
push 0xe29
push str.main
push 5
call fcn.00401210
add esp, 0x10
mov byte [0x2389cda], 1
jmp 0x406381
mov eax, 0x238b640
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4060d0
sub eax, edx
cmp eax, 0x16
ja 0x4060e3
mov eax, 0x16
push eax
push str.maxpayloadsizeinbytes
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x406133
push 0x3b8c560
call fcn.00418f05
add esp, 4
cdq
push edx
push eax
push str.User_set_MaxPayloadSizeToTargetInBytes_to__ld_n
push 0xe30
push str.main
push 5
mov dword [0x3a85a00], eax
mov dword [0x3a85a04], edx
call fcn.00401210
add esp, 0x18
jmp 0x406381
mov eax, 0x238b640
lea edx, [eax + 1]
jmp 0x406140
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x406140
sub eax, edx
cmp eax, 0x13
ja 0x406153
mov eax, 0x13
push eax
push str.comportopentimeout
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x4061a2
push 0x3b8c560
call fcn.00419d74
fstp dword [0x436408]
fld dword [0x436408]
push ecx
fstp qword [esp]
push str.User_set_ComPortOpenTimeout_to__f_n
push 0xe36
push str.main
push 4
call fcn.00401210
add esp, 0x18
jmp 0x406381
mov eax, 0x238b640
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4061b0
sub eax, edx
cmp eax, 0x1a
ja 0x4061c3
mov eax, 0x1a
push eax
push str.maxdigesttablesizeinbytes
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x406238
push 0x3b8c560
call fcn.00418f05
add esp, 4
cdq
push edx
push eax
push str.User_set_MaxDigestTableSizeInBytes_to__ld_n
push 0xe3c
push str.main
push 5
mov dword [0x3a85a18], eax
mov dword [0x3a85a1c], edx
call fcn.00401210
mov ecx, dword [0x3a85a1c]
mov edx, dword [0x3a85a18]
add esp, 0x18
push ebx
push 0x20
push ecx
push edx
call fcn.00421560
mov dword [0x2389c38], eax
mov dword [0x2389c3c], edx
jmp 0x406381
mov eax, 0x238b640
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x406240
sub eax, edx
cmp eax, 3
ja 0x406253
mov eax, 3
push eax
push 0x42ac94
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x406344
push 0x100000
push ebx
push 0x277a800
call fcn.0041c990
mov ecx, 0xa
mov esi, 0x42afb8
mov edi, 0x277a800
rep movsd dword es:[edi], dword [esi]
add esp, 0xc
push 0x277a800
mov eax, str._data__n
movsb byte es:[edi], byte [esi]
call fcn.0040b080
add esp, 4
push 0x277a800
mov eax, str._NOP_value_ping_
call fcn.0040b080
add esp, 4
push 0x277a800
mov eax, str.___n__data__n
call fcn.0040b080
mov eax, 0x277a800
add esp, 4
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x4062d1
push ebx
push 0x100000
push ebx
push 0x1000
push ebx
sub eax, ecx
push eax
mov eax, dword [0x436428]
push ebx
push ebx
push ebx
push ebx
shl eax, 0xc
add eax, 0x3cccd60
push 0x277a800
push eax
call fcn.0040b150
mov eax, dword [0x43642c]
add esp, 0x30
add dword [0x436428], 1
adc eax, ebx
mov dword [0x43642c], eax
cmp eax, ebx
jg 0x406330
jl 0x406381
cmp dword [0x436428], 0x1f40
jb 0x406381
push 0x3cccd60
push str.1._Too_many_XML_files_in_XMLStringTable__max_is__d
push 0xe4c
jmp 0x4036be
mov eax, 0x238b640
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x406350
sub eax, edx
cmp eax, 0xe
ja 0x406363
mov eax, 0xe
push eax
push str.forceoverwrite
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x406381
mov byte [0x2389ce2], 1
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
add ecx, 1
adc eax, ebx
mov dword [esp + 0x20], ecx
mov dword [esp + 0x24], eax
cmp eax, dword [esp + 0x2c]
jl 0x404fbb
jg 0x406401
cmp ecx, dword [esp + 0x28]
jb 0x404fbb
jmp 0x406401
push 0x3b8c560
push str.Call_to_stringToNumber_failed_for_MyNumSectors_with_value__s
push 0xd56
push str.main
push 4
jmp 0x4036c5
push 0x3b8c560
push str.Call_to_stringToNumber_failed_for_MyTrials_with_value__s
push 0xd67
push str.main
push 4
jmp 0x4036c5
push 0x3b8c560
push str.Call_to_stringToNumber_failed_for_MyStartSector_with_value__s
push 0xd78
push str.main
push 4
jmp 0x4036c5
xor ebx, ebx
call fcn.0040fed0
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x28]
mov dword [0x2389be0], ebx
mov dword [0x2389be4], ebx
mov dword [esp + 0x20], 1
mov dword [esp + 0x24], ebx
mov dword [esp + 0x60], ecx
mov dword [esp + 0x64], eax
cmp eax, ebx
jl 0x408735
jg 0x406441
cmp ecx, 1
jbe 0x408735
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x34]
push 0x3b8c560
push ecx
call fcn.00401610
mov eax, 0x238b640
add esp, 8
lea edx, [eax + 1]
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x406460
sub eax, edx
cmp eax, 0x11
ja 0x406473
mov eax, 0x11
push eax
push str.getgptmainbackup
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x406c41
push 0x100000
push eax
push 0x277a800
call fcn.0041c990
mov ecx, 0xa
mov esi, 0x42afb8
mov edi, 0x277a800
rep movsd dword es:[edi], dword [esi]
mov eax, 0x277a800
add esp, 0xc
movsb byte es:[edi], byte [esi]
lea edx, [eax + 1]
jmp 0x4064c0
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4064c0
sub eax, edx
mov edx, 0xffff7
sub edx, eax
cmp edx, 7
jb 0x406502
mov ecx, dword [str._data__n]
mov dx, word [0x42c000]
mov dword [eax + 0x277a800], ecx
mov cl, byte [0x42c002]
mov word [eax + 0x277a804], dx
mov byte [eax + 0x277a806], cl
mov byte [eax + 0x277a807], 0
mov eax, 0x277a800
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x406510
sub eax, edx
mov edx, 0xffff7
sub edx, eax
cmp edx, 6
jb 0x406546
mov ecx, dword [0x42d434]
mov dx, word [0x42d438]
mov dword [eax + 0x277a800], ecx
mov word [eax + 0x277a804], dx
mov byte [eax + 0x277a806], 0
mov eax, dword [0x3a85a4c]
mov ecx, dword [0x3a85a48]
push eax
push ecx
push str.SECTOR_SIZE_IN_BYTES__lld_
push 0x100000
push 0x253a740
call fcn.00418f10
mov eax, 0x277a800
add esp, 0x14
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x406572
sub eax, edx
mov edi, eax
mov eax, 0x253a740
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x406585
sub eax, edx
mov edx, 0xffff7
mov esi, eax
sub edx, edi
cmp esi, edx
ja 0x4065b8
push esi
lea eax, [edi + 0x277a800]
push 0x253a740
push eax
call fcn.004207b0
add esp, 0xc
mov byte [edi + esi + 0x277a800], 0
mov ebx, 0x1000
cmp dword [0x3a85a48], ebx
jne 0x4065d5
cmp dword [0x3a85a4c], 0
jne 0x4065d5
push str.num_partition_sectors_6_
jmp 0x4065da
push str.num_partition_sectors_34_
push 0x100000
push 0x253a740
call fcn.00418f10
mov eax, 0x277a800
add esp, 0xc
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4065f4
sub eax, edx
mov edi, eax
mov eax, 0x253a740
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x406607
sub eax, edx
mov ecx, 0xffff7
mov esi, eax
sub ecx, edi
cmp esi, ecx
ja 0x40663a
push esi
lea edx, [edi + 0x277a800]
push 0x253a740
push edx
call fcn.004207b0
add esp, 0xc
mov byte [edi + esi + 0x277a800], 0
push 0x3b8c560
call fcn.00418f05
add esp, 4
push eax
push str.filename_gpt_main_d.bin_
push 0x100000
push 0x253a740
call fcn.00418f10
mov eax, 0x277a800
add esp, 0x10
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x406667
sub eax, edx
mov edi, eax
mov eax, 0x253a740
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x406680
sub eax, edx
mov esi, eax
mov eax, 0xffff7
sub eax, edi
cmp esi, eax
ja 0x4066b3
push esi
lea ecx, [edi + 0x277a800]
push 0x253a740
push ecx
call fcn.004207b0
add esp, 0xc
mov byte [edi + esi + 0x277a800], 0
push 0x3b8c560
call fcn.00418f05
add esp, 4
push eax
push str.physical_partition_number__i_
push 0x100000
push 0x253a740
call fcn.00418f10
mov eax, 0x277a800
add esp, 0x10
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4066e0
sub eax, edx
mov edi, eax
mov eax, 0x253a740
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4066f3
sub eax, edx
mov edx, 0xffff7
mov esi, eax
sub edx, edi
cmp esi, edx
ja 0x406726
push esi
lea eax, [edi + 0x277a800]
push 0x253a740
push eax
call fcn.004207b0
add esp, 0xc
mov byte [edi + esi + 0x277a800], 0
push str.start_sector_0_
push 0x100000
push 0x253a740
call fcn.00418f10
mov eax, 0x277a800
add esp, 0xc
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x406745
sub eax, edx
mov edi, eax
mov eax, 0x253a740
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x406758
sub eax, edx
mov ecx, 0xffff7
mov esi, eax
sub ecx, edi
cmp esi, ecx
ja 0x40678b
push esi
lea edx, [edi + 0x277a800]
push 0x253a740
push edx
call fcn.004207b0
add esp, 0xc
mov byte [edi + esi + 0x277a800], 0
mov eax, 0x277a800
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x406793
sub eax, edx
mov ecx, 0xffff7
sub ecx, eax
cmp ecx, 0xb
jb 0x4067e1
mov edx, dword [str.___n__data__n]
mov ecx, dword [0x42d048]
mov dword [eax + 0x277a800], edx
mov dx, word [0x42d04c]
mov dword [eax + 0x277a804], ecx
mov cl, byte [0x42d04e]
mov word [eax + 0x277a808], dx
mov byte [eax + 0x277a80a], cl
mov byte [eax + 0x277a80b], 0
mov eax, 0x277a800
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4067f0
push 0
push 0x100000
push 0
push ebx
push 0
sub eax, edx
mov edx, dword [0x436428]
push eax
push 0
push 0
push 0
push 0
shl edx, 0xc
add edx, 0x3cccd60
push 0x277a800
push edx
call fcn.0040b150
mov eax, dword [0x43642c]
add esp, 0x30
add dword [0x436428], 1
adc eax, 0
mov dword [0x43642c], eax
test eax, eax
jg 0x4087e7
jl 0x406859
cmp dword [0x436428], 0x1f40
jae 0x4087e7
push 0x100000
push 0
push 0x277a800
call fcn.0041c990
mov ecx, 0xa
mov esi, 0x42afb8
mov edi, 0x277a800
rep movsd dword es:[edi], dword [esi]
mov eax, 0x277a800
add esp, 0xc
movsb byte es:[edi], byte [esi]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x406887
sub eax, edx
mov ecx, 0xffff7
sub ecx, eax
cmp ecx, 7
jb 0x4068c9
mov edx, dword [str._data__n]
mov cx, word [0x42c000]
mov dword [eax + 0x277a800], edx
mov dl, byte [0x42c002]
mov word [eax + 0x277a804], cx
mov byte [eax + 0x277a806], dl
mov byte [eax + 0x277a807], 0
mov eax, 0x277a800
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4068d1
sub eax, edx
mov ecx, 0xffff7
sub ecx, eax
cmp ecx, 6
jb 0x406907
mov edx, dword [0x42d434]
mov cx, word [0x42d438]
mov dword [eax + 0x277a800], edx
mov word [eax + 0x277a804], cx
mov byte [eax + 0x277a806], 0
mov edx, dword [0x3a85a4c]
mov eax, dword [0x3a85a48]
push edx
push eax
push str.SECTOR_SIZE_IN_BYTES__lld_
push 0x100000
push 0x253a740
call fcn.00418f10
mov eax, 0x277a800
add esp, 0x14
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x406933
sub eax, edx
mov edi, eax
mov eax, 0x253a740
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x406946
sub eax, edx
mov ecx, 0xffff7
mov esi, eax
sub ecx, edi
cmp esi, ecx
ja 0x406979
push esi
lea edx, [edi + 0x277a800]
push 0x253a740
push edx
call fcn.004207b0
add esp, 0xc
mov byte [edi + esi + 0x277a800], 0
cmp dword [0x3a85a48], ebx
jne 0x406991
cmp dword [0x3a85a4c], 0
jne 0x406991
push str.num_partition_sectors_5_
jmp 0x406996
push str.num_partition_sectors_33_
push 0x100000
push 0x253a740
call fcn.00418f10
mov eax, 0x277a800
add esp, 0xc
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4069b0
sub eax, edx
mov edi, eax
mov eax, 0x253a740
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4069c3
sub eax, edx
mov esi, eax
mov eax, 0xffff7
sub eax, edi
cmp esi, eax
ja 0x4069f6
push esi
lea ecx, [edi + 0x277a800]
push 0x253a740
push ecx
call fcn.004207b0
add esp, 0xc
mov byte [edi + esi + 0x277a800], 0
push 0x3b8c560
call fcn.00418f05
add esp, 4
push eax
push str.filename_gpt_backup_d.bin_
push 0x100000
push 0x253a740
call fcn.00418f10
mov eax, 0x277a800
add esp, 0x10
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x406a23
sub eax, edx
mov edi, eax
mov eax, 0x253a740
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x406a36
sub eax, edx
mov edx, 0xffff7
mov esi, eax
sub edx, edi
cmp esi, edx
ja 0x406a69
push esi
lea eax, [edi + 0x277a800]
push 0x253a740
push eax
call fcn.004207b0
add esp, 0xc
mov byte [edi + esi + 0x277a800], 0
push 0x3b8c560
call fcn.00418f05
add esp, 4
push eax
push str.physical_partition_number__i_
push 0x100000
push 0x253a740
call fcn.00418f10
mov eax, 0x277a800
add esp, 0x10
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x406a96
sub eax, edx
mov edi, eax
mov eax, 0x253a740
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x406ab0
sub eax, edx
mov ecx, 0xffff7
mov esi, eax
sub ecx, edi
cmp esi, ecx
ja 0x406ae3
push esi
lea edx, [edi + 0x277a800]
push 0x253a740
push edx
call fcn.004207b0
add esp, 0xc
mov byte [edi + esi + 0x277a800], 0
cmp dword [0x3a85a48], ebx
jne 0x406afb
cmp dword [0x3a85a4c], 0
jne 0x406afb
push str.start_sector_NUM_DISK_SECTORS_5._
jmp 0x406b00
push str.start_sector_NUM_DISK_SECTORS_33._
push 0x100000
push 0x253a740
call fcn.00418f10
mov eax, 0x277a800
add esp, 0xc
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x406b20
sub eax, edx
mov edi, eax
mov eax, 0x253a740
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x406b33
sub eax, edx
mov esi, eax
mov eax, 0xffff7
sub eax, edi
cmp esi, eax
ja 0x406b66
push esi
lea ecx, [edi + 0x277a800]
push 0x253a740
push ecx
call fcn.004207b0
add esp, 0xc
mov byte [edi + esi + 0x277a800], 0
mov eax, 0x277a800
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x406b70
sub eax, edx
mov edx, 0xffff7
sub edx, eax
cmp edx, 0xb
jb 0x406bbe
mov ecx, dword [str.___n__data__n]
mov edx, dword [0x42d048]
mov dword [eax + 0x277a800], ecx
mov cx, word [0x42d04c]
mov dword [eax + 0x277a804], edx
mov dl, byte [0x42d04e]
mov word [eax + 0x277a808], cx
mov byte [eax + 0x277a80a], dl
mov byte [eax + 0x277a80b], 0
mov eax, 0x277a800
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x406bc6
push 0
push 0x100000
push 0
push ebx
push 0
sub eax, edx
push eax
mov eax, dword [0x436428]
push 0
push 0
push 0
push 0
shl eax, 0xc
add eax, 0x3cccd60
push 0x277a800
push eax
call fcn.0040b150
mov eax, dword [0x43642c]
add esp, 0x30
add dword [0x436428], 1
adc eax, 0
mov dword [0x43642c], eax
test eax, eax
jg 0x406c2d
jl 0x408709
cmp dword [0x436428], 0x1f40
jb 0x408709
push 0x3cccd60
push str.1._Too_many_XML_files_in_XMLStringTable__max_is__d
push 0xeaf
jmp 0x4036be
mov eax, 0x238b640
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x406c50
sub eax, edx
cmp eax, 0x15
ja 0x406c63
mov eax, 0x15
push eax
push str.forcecontentsxmlpaths
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x406c9f
push str.User_requested_forcecontentsxmlpaths
push 0xeb8
push str.main
push 4
call fcn.00401210
add esp, 0x10
mov byte [0x23893b0], 1
jmp 0x408709
mov eax, 0x238b640
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x406ca7
sub eax, edx
cmp eax, 0xc
ja 0x406cba
mov eax, 0xc
push eax
push str.verify_build
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x406d04
push str.User_requested_verify_build__NOTE:_This_is_to_be_used_with___contentsxml
push 0xebd
push str.main
push 4
call fcn.00401210
add esp, 0x10
mov byte [0x23893b1], 1
mov byte [0x2389c43], 1
mov byte [0x2389bc9], 0
jmp 0x408709
mov eax, 0x238b640
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x406d10
sub eax, edx
cmp eax, 0xf
ja 0x406d23
mov eax, 0xf
push eax
push str.benchmarkwrites
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x406ed1
push 0x100000
push eax
push 0x277a800
call fcn.0041c990
mov ecx, 0xa
mov esi, 0x42afb8
mov edi, 0x277a800
rep movsd dword es:[edi], dword [esi]
mov eax, 0x277a800
add esp, 0xc
movsb byte es:[edi], byte [esi]
lea edx, [eax + 1]
jmp 0x406d70
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x406d70
sub eax, edx
mov ecx, 0xffff7
sub ecx, eax
cmp ecx, 7
jb 0x406db2
mov edx, dword [str._data__n]
mov cx, word [0x42c000]
mov dword [eax + 0x277a800], edx
mov dl, byte [0x42c002]
mov word [eax + 0x277a804], cx
mov byte [eax + 0x277a806], dl
mov byte [eax + 0x277a807], 0
mov eax, 0x277a800
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x406dc0
sub eax, edx
mov esi, eax
mov eax, 0xffff7
sub eax, esi
cmp eax, 0x4d
jb 0x406df4
push 0x4d
lea ecx, [esi + 0x277a800]
push str._benchmark_test_TestWritePerformance__trials_500__TestWritePerformance_1_
push ecx
call fcn.004207b0
add esp, 0xc
mov byte [esi + 0x277a84d], 0
mov eax, 0x277a800
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x406e00
sub eax, edx
mov edx, 0xffff7
sub edx, eax
cmp edx, 0xa
jb 0x406e42
mov ecx, dword [str.___n__data_]
mov edx, dword [0x42c740]
mov dword [eax + 0x277a800], ecx
mov cx, word [0x42c744]
mov dword [eax + 0x277a804], edx
mov word [eax + 0x277a808], cx
mov byte [eax + 0x277a80a], 0
mov eax, 0x277a800
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x406e50
push 0
push 0x100000
push 0
push 0x1000
push 0
sub eax, edx
mov edx, dword [0x436428]
push eax
push 0
push 0
push 0
push 0
shl edx, 0xc
add edx, 0x3cccd60
push 0x277a800
push edx
call fcn.0040b150
mov eax, dword [0x43642c]
add esp, 0x30
add dword [0x436428], 1
adc eax, 0
mov dword [0x43642c], eax
test eax, eax
jg 0x406ebd
jl 0x408709
cmp dword [0x436428], 0x1f40
jb 0x408709
push 0x3cccd60
push str.1._Too_many_XML_files_in_XMLStringTable__max_is__d
push 0xed0
jmp 0x4036be
mov eax, 0x238b640
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x406ee0
sub eax, edx
cmp eax, 0xe
ja 0x406ef3
mov eax, 0xe
push eax
push str.benchmarkreads
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x4070a1
push 0x100000
push eax
push 0x277a800
call fcn.0041c990
mov ecx, 0xa
mov esi, 0x42afb8
mov edi, 0x277a800
rep movsd dword es:[edi], dword [esi]
mov eax, 0x277a800
add esp, 0xc
movsb byte es:[edi], byte [esi]
lea edx, [eax + 1]
jmp 0x406f40
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x406f40
sub eax, edx
mov ecx, 0xffff7
sub ecx, eax
cmp ecx, 7
jb 0x406f82
mov edx, dword [str._data__n]
mov cx, word [0x42c000]
mov dword [eax + 0x277a800], edx
mov dl, byte [0x42c002]
mov word [eax + 0x277a804], cx
mov byte [eax + 0x277a806], dl
mov byte [eax + 0x277a807], 0
mov eax, 0x277a800
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x406f90
sub eax, edx
mov esi, eax
mov eax, 0xffff7
sub eax, esi
cmp eax, 0x4b
jb 0x406fc4
push 0x4b
lea ecx, [esi + 0x277a800]
push str._benchmark_test_TestReadPerformance__trials_500__TestReadPerformance_1_
push ecx
call fcn.004207b0
add esp, 0xc
mov byte [esi + 0x277a84b], 0
mov eax, 0x277a800
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x406fd0
sub eax, edx
mov edx, 0xffff7
sub edx, eax
cmp edx, 0xa
jb 0x407012
mov ecx, dword [str.___n__data_]
mov edx, dword [0x42c740]
mov dword [eax + 0x277a800], ecx
mov cx, word [0x42c744]
mov dword [eax + 0x277a804], edx
mov word [eax + 0x277a808], cx
mov byte [eax + 0x277a80a], 0
mov eax, 0x277a800
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x407020
push 0
push 0x100000
push 0
push 0x1000
push 0
sub eax, edx
mov edx, dword [0x436428]
push eax
push 0
push 0
push 0
push 0
shl edx, 0xc
add edx, 0x3cccd60
push 0x277a800
push edx
call fcn.0040b150
mov eax, dword [0x43642c]
add esp, 0x30
add dword [0x436428], 1
adc eax, 0
mov dword [0x43642c], eax
test eax, eax
jg 0x40708d
jl 0x408709
cmp dword [0x436428], 0x1f40
jb 0x408709
push 0x3cccd60
push str.1._Too_many_XML_files_in_XMLStringTable__max_is__d
push 0xee3
jmp 0x4036be
mov eax, 0x238b640
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4070b0
sub eax, edx
cmp eax, 0x1a
ja 0x4070c3
mov eax, 0x1a
push eax
push str.benchmarkdigestperformance
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x407271
push 0x100000
push eax
push 0x277a800
call fcn.0041c990
mov ecx, 0xa
mov esi, 0x42afb8
mov edi, 0x277a800
rep movsd dword es:[edi], dword [esi]
mov eax, 0x277a800
add esp, 0xc
movsb byte es:[edi], byte [esi]
lea edx, [eax + 1]
jmp 0x407110
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x407110
sub eax, edx
mov ecx, 0xffff7
sub ecx, eax
cmp ecx, 7
jb 0x407152
mov edx, dword [str._data__n]
mov cx, word [0x42c000]
mov dword [eax + 0x277a800], edx
mov dl, byte [0x42c002]
mov word [eax + 0x277a804], cx
mov byte [eax + 0x277a806], dl
mov byte [eax + 0x277a807], 0
mov eax, 0x277a800
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x407160
sub eax, edx
mov esi, eax
mov eax, 0xffff7
sub eax, esi
cmp eax, 0x4f
jb 0x407194
push 0x4f
lea ecx, [esi + 0x277a800]
push str._benchmark_test_TestDigestPerformance__trials_500__TestDigestPerformance_1_
push ecx
call fcn.004207b0
add esp, 0xc
mov byte [esi + 0x277a84f], 0
mov eax, 0x277a800
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4071a0
sub eax, edx
mov edx, 0xffff7
sub edx, eax
cmp edx, 0xa
jb 0x4071e2
mov ecx, dword [str.___n__data_]
mov edx, dword [0x42c740]
mov dword [eax + 0x277a800], ecx
mov cx, word [0x42c744]
mov dword [eax + 0x277a804], edx
mov word [eax + 0x277a808], cx
mov byte [eax + 0x277a80a], 0
mov eax, 0x277a800
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4071f0
push 0
push 0x100000
push 0
push 0x1000
push 0
sub eax, edx
mov edx, dword [0x436428]
push eax
push 0
push 0
push 0
push 0
shl edx, 0xc
add edx, 0x3cccd60
push 0x277a800
push edx
call fcn.0040b150
mov eax, dword [0x43642c]
add esp, 0x30
add dword [0x436428], 1
adc eax, 0
mov dword [0x43642c], eax
test eax, eax
jg 0x40725d
jl 0x408709
cmp dword [0x436428], 0x1f40
jb 0x408709
push 0x3cccd60
push str.1._Too_many_XML_files_in_XMLStringTable__max_is__d
push 0xef5
jmp 0x4036be
mov eax, 0x238b640
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x407280
sub eax, edx
cmp eax, 0xc
ja 0x407293
mov eax, 0xc
push eax
push str.benchmarkddr
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x4072c8
push str.benchmarkddr_option_is_no_longer_supported.
push 0xefe
push str.main
push 1
call fcn.00401210
add esp, 0x10
jmp 0x408709
mov eax, 0x238b640
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4072d0
sub eax, edx
cmp eax, 0xa
ja 0x4072e3
mov eax, 0xa
push eax
push str.sendimage
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x408198
push 1
mov ecx, 0x3b8c560
call fcn.0040f430
add esp, 4
mov dword [esp + 0x70], eax
test eax, eax
jne 0x407333
cmp byte [0x23893af], al
je 0x4087fb
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x6c]
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], ecx
jmp 0x407369
mov edx, dword [0x43641c]
mov eax, dword [0x436418]
mov ecx, dword [0x2389cec]
push edx
mov edx, dword [0x2389ce8]
push eax
push ecx
push edx
call fcn.00427940
or ecx, ebx
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], edx
je 0x407369
add dword [esp + 0x38], 1
adc dword [esp + 0x3c], 0
mov eax, dword [0x2389cec]
mov ecx, dword [0x2389ce8]
mov edi, dword [esp + 0x6c]
mov esi, dword [esp + 0x68]
push eax
push ecx
push str.File_size_is__lld_bytes
push 0xf25
push str.main
push 5
call fcn.00401210
mov edx, dword [esp + 0x54]
mov ebx, dword [esp + 0x50]
push edx
push ebx
push str.NumSectors_needed__lld
push 0xf26
push str.main
push 5
call fcn.00401210
add esp, 0x30
test edi, edi
jl 0x40740f
jg 0x4073c1
test esi, esi
je 0x40740f
cmp edi, dword [esp + 0x3c]
jg 0x4073ee
jl 0x4073cd
cmp esi, ebx
jae 0x4073ee
push edi
push esi
push edi
push esi
push str.NumSectors_changed_to__lld_by___num_sectors_lld
push 0xf2e
mov ebx, esi
push str.main
mov dword [esp + 0x54], ebx
mov dword [esp + 0x58], edi
push 5
jmp 0x407407
mov eax, dword [esp + 0x3c]
push eax
push ebx
push edi
push esi
push str.User_specified___num_sectors_lld_but_file_only_has__lld_sectors._Ignoring___num_sectors_n_n
push 0xf31
push str.main
push 3
call fcn.00401210
add esp, 0x20
mov ecx, ebx
or ecx, dword [esp + 0x3c]
je 0x40880f
cmp byte [0x2389cdd], 0
je 0x4077eb
push 0x100000
push 0
push 0x277a800
call fcn.0041c990
mov ecx, 0xa
mov esi, 0x42afb8
mov edi, 0x277a800
rep movsd dword es:[edi], dword [esi]
mov eax, 0x277a800
add esp, 0xc
movsb byte es:[edi], byte [esi]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x407456
sub eax, edx
mov edx, 0xffff7
sub edx, eax
cmp edx, 7
jb 0x407498
mov ecx, dword [str._data__n]
mov dx, word [0x42c000]
mov dword [eax + 0x277a800], ecx
mov cl, byte [0x42c002]
mov word [eax + 0x277a804], dx
mov byte [eax + 0x277a806], cl
mov byte [eax + 0x277a807], 0
mov eax, 0x277a800
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4074a0
sub eax, edx
mov edx, 0xffff7
sub edx, eax
cmp edx, 9
jb 0x4074e0
mov ecx, dword [0x42c004]
mov edx, dword [0x42c008]
mov dword [eax + 0x277a800], ecx
mov cl, byte [0x42c00c]
mov dword [eax + 0x277a804], edx
mov byte [eax + 0x277a808], cl
mov byte [eax + 0x277a809], 0
mov edx, dword [0x43641c]
mov eax, dword [0x436418]
push edx
push eax
push str.SECTOR_SIZE_IN_BYTES__lld_
push 0x100000
push 0x253a740
call fcn.00418f10
mov eax, 0x277a800
add esp, 0x14
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x407510
sub eax, edx
mov edi, eax
mov eax, 0x253a740
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x407523
sub eax, edx
mov ecx, 0xffff7
mov esi, eax
sub ecx, edi
cmp esi, ecx
ja 0x407556
push esi
lea edx, [edi + 0x277a800]
push 0x253a740
push edx
call fcn.004207b0
add esp, 0xc
mov byte [edi + esi + 0x277a800], 0
mov eax, dword [0x43641c]
mov ecx, dword [0x436418]
push eax
push ecx
push 0
push 0x4000
call fcn.00421560
push edx
push eax
push 0x42c044
push 0x100000
push 0x253a740
call fcn.00418f10
mov eax, 0x277a800
add esp, 0x14
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x407590
sub eax, edx
mov edi, eax
mov eax, 0x253a740
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4075a3
sub eax, edx
mov edx, 0xffff7
mov esi, eax
sub edx, edi
cmp esi, edx
ja 0x4075d6
push esi
lea eax, [edi + 0x277a800]
push 0x253a740
push eax
call fcn.004207b0
add esp, 0xc
mov byte [edi + esi + 0x277a800], 0
push str.Zeros16KB.bin
push str.filename__s_
push 0x100000
push 0x253a740
call fcn.00418f10
mov eax, 0x277a800
add esp, 0x10
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x407600
sub eax, edx
mov edi, eax
mov eax, 0x253a740
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x407613
sub eax, edx
mov ecx, 0xffff7
mov esi, eax
sub ecx, edi
cmp esi, ecx
ja 0x407646
push esi
lea edx, [edi + 0x277a800]
push 0x253a740
push edx
call fcn.004207b0
add esp, 0xc
mov byte [edi + esi + 0x277a800], 0
mov eax, dword [0x3a85a5c]
mov ecx, dword [0x3a85a58]
push eax
push ecx
push str.physical_partition_number__lld_
push 0x100000
push 0x253a740
call fcn.00418f10
mov eax, 0x277a800
add esp, 0x14
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x407672
sub eax, edx
mov edi, eax
mov eax, 0x253a740
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x407685
sub eax, edx
mov edx, 0xffff7
mov esi, eax
sub edx, edi
cmp esi, edx
ja 0x4076b8
push esi
lea eax, [edi + 0x277a800]
push 0x253a740
push eax
call fcn.004207b0
add esp, 0xc
mov byte [edi + esi + 0x277a800], 0
push 0x3a85ae0
push str.start_sector__s_
push 0x100000
push 0x253a740
call fcn.00418f10
mov eax, 0x277a800
add esp, 0x10
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4076e0
sub eax, edx
mov edi, eax
mov eax, 0x253a740
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4076f3
sub eax, edx
mov ecx, 0xffff7
mov esi, eax
sub ecx, edi
cmp esi, ecx
ja 0x407726
push esi
lea edx, [edi + 0x277a800]
push 0x253a740
push edx
call fcn.004207b0
add esp, 0xc
mov byte [edi + esi + 0x277a800], 0
mov eax, 0x277a800
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x407730
sub eax, edx
mov ecx, 0xffff7
sub ecx, eax
cmp ecx, 0xa
jb 0x407772
mov edx, dword [str.___n__data_]
mov ecx, dword [0x42c740]
mov dword [eax + 0x277a800], edx
mov dx, word [0x42c744]
mov dword [eax + 0x277a804], ecx
mov word [eax + 0x277a808], dx
mov byte [eax + 0x277a80a], 0
mov eax, 0x277a800
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x407780
push 0
push 0x100000
push 0
push 0x1000
push 0
sub eax, edx
push eax
mov eax, dword [0x436428]
push 0
push 0
push 0
push 0
shl eax, 0xc
add eax, 0x3cccd60
push 0x277a800
push eax
call fcn.0040b150
mov eax, dword [0x43642c]
add esp, 0x30
add dword [0x436428], 1
adc eax, 0
mov dword [0x43642c], eax
test eax, eax
jg 0x408823
jl 0x4077eb
cmp dword [0x436428], 0x1f40
jae 0x408823
cmp byte [0x2389cde], 0
je 0x407b3b
push 0x100000
push 0
push 0x277a800
call fcn.0041c990
mov ecx, 0xa
mov esi, 0x42afb8
mov edi, 0x277a800
rep movsd dword es:[edi], dword [esi]
mov eax, 0x277a800
add esp, 0xc
movsb byte es:[edi], byte [esi]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x407826
sub eax, edx
mov ecx, 0xffff7
sub ecx, eax
cmp ecx, 7
jb 0x407868
mov edx, dword [str._data__n]
mov cx, word [0x42c000]
mov dword [eax + 0x277a800], edx
mov dl, byte [0x42c002]
mov word [eax + 0x277a804], cx
mov byte [eax + 0x277a806], dl
mov byte [eax + 0x277a807], 0
mov eax, 0x277a800
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x407870
sub eax, edx
mov ecx, 0xffff7
sub ecx, eax
cmp ecx, 7
jb 0x4078b2
mov edx, dword [str._erase]
mov cx, word [0x42c718]
mov dword [eax + 0x277a800], edx
mov dl, byte [0x42c71a]
mov word [eax + 0x277a804], cx
mov byte [eax + 0x277a806], dl
mov byte [eax + 0x277a807], 0
mov eax, dword [0x43641c]
mov ecx, dword [0x436418]
push eax
push ecx
push str.SECTOR_SIZE_IN_BYTES__lld_
push 0x100000
push 0x253a740
call fcn.00418f10
mov eax, 0x277a800
add esp, 0x14
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4078e0
sub eax, edx
mov edi, eax
mov eax, 0x253a740
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4078f3
sub eax, edx
mov edx, 0xffff7
mov esi, eax
sub edx, edi
cmp esi, edx
ja 0x407926
push esi
lea eax, [edi + 0x277a800]
push 0x253a740
push eax
call fcn.004207b0
add esp, 0xc
mov byte [edi + esi + 0x277a800], 0
mov ecx, dword [esp + 0x3c]
push ecx
push ebx
push 0x42c044
push 0x100000
push 0x253a740
call fcn.00418f10
mov eax, 0x277a800
add esp, 0x14
lea edx, [eax + 1]
jmp 0x407950
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x407950
sub eax, edx
mov edi, eax
mov eax, 0x253a740
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x407963
sub eax, edx
mov edx, 0xffff7
mov esi, eax
sub edx, edi
cmp esi, edx
ja 0x407996
push esi
lea eax, [edi + 0x277a800]
push 0x253a740
push eax
call fcn.004207b0
add esp, 0xc
mov byte [edi + esi + 0x277a800], 0
mov ecx, dword [0x3a85a5c]
mov edx, dword [0x3a85a58]
push ecx
push edx
push str.physical_partition_number__lld_
push 0x100000
push 0x253a740
call fcn.00418f10
mov eax, 0x277a800
add esp, 0x14
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4079c3
sub eax, edx
mov edi, eax
mov eax, 0x253a740
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4079d6
sub eax, edx
mov esi, eax
mov eax, 0xffff7
sub eax, edi
cmp esi, eax
ja 0x407a09
push esi
lea ecx, [edi + 0x277a800]
push 0x253a740
push ecx
call fcn.004207b0
add esp, 0xc
mov byte [edi + esi + 0x277a800], 0
push 0x3a85ae0
push str.start_sector__s_
push 0x100000
push 0x253a740
call fcn.00418f10
mov eax, 0x277a800
add esp, 0x10
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x407a30
sub eax, edx
mov edi, eax
mov eax, 0x253a740
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x407a43
sub eax, edx
mov edx, 0xffff7
mov esi, eax
sub edx, edi
cmp esi, edx
ja 0x407a76
push esi
lea eax, [edi + 0x277a800]
push 0x253a740
push eax
call fcn.004207b0
add esp, 0xc
mov byte [edi + esi + 0x277a800], 0
mov eax, 0x277a800
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x407a80
sub eax, edx
mov ecx, 0xffff7
sub ecx, eax
cmp ecx, 0xa
jb 0x407ac2
mov edx, dword [str.___n__data_]
mov ecx, dword [0x42c740]
mov dword [eax + 0x277a800], edx
mov dx, word [0x42c744]
mov dword [eax + 0x277a804], ecx
mov word [eax + 0x277a808], dx
mov byte [eax + 0x277a80a], 0
mov eax, 0x277a800
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x407ad0
push 0
push 0x100000
push 0
push 0x1000
push 0
sub eax, edx
push eax
mov eax, dword [0x436428]
push 0
push 0
push 0
push 0
shl eax, 0xc
add eax, 0x3cccd60
push 0x277a800
push eax
call fcn.0040b150
mov eax, dword [0x43642c]
add esp, 0x30
add dword [0x436428], 1
adc eax, 0
mov dword [0x43642c], eax
test eax, eax
jg 0x408837
jl 0x407b3b
cmp dword [0x436428], 0x1f40
jae 0x408837
mov esi, dword [esp + 0x70]
test esi, esi
je 0x407b5f
push 0x800
mov edx, 0x42d888
mov ecx, esi
call fcn.00410ed0
mov edi, eax
add esp, 4
mov dword [esp + 0x74], edi
jmp 0x407b63
mov edi, dword [esp + 0x74]
push str..ffu
push 0x3b8c560
call fcn.004188e0
add esp, 8
mov ebx, eax
test esi, esi
je 0x407d59
push edi
push 0x1c
lea ecx, [esp + 0x8c]
push 1
push ecx
call fcn.00419559
add esp, 0x10
cmp eax, 0x1c
je 0x407cd7
push 0
push 0
push 0
push edi
call fcn.00418c8a
add esp, 0x10
test ebx, ebx
je 0x407d59
push edi
push 0x20
lea edx, [esp + 0x8c]
push 1
push edx
call fcn.00419559
add esp, 0x10
cmp eax, 0x20
jne 0x407d59
push 0
push 0
push 0
push edi
call fcn.00418c8a
push 0xb
lea eax, [esp + 0x9c]
push str.SignedImage
push eax
call fcn.00417bf7
add esp, 0x1c
test eax, eax
jne 0x407d59
push 0x3b8c560
push str._s_is_being_treated_as_a_windows_FFU_image
push 0xf89
push str.main
push 4
call fcn.00401210
add esp, 0x14
push 0xd58
call fcn.00418846
mov esi, eax
mov eax, 0x3b8c560
add esp, 4
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x407c32
sub eax, ecx
inc eax
push eax
push 0x3b8c560
push esi
call fcn.004207b0
mov ecx, dword [0x436418]
mov edx, dword [0x43641c]
mov eax, dword [esp + 0x5c]
add esp, 0xc
mov dword [esi + 0x800], ecx
mov ecx, dword [esp + 0x54]
push edi
push esi
mov dword [esi + 0x804], edx
mov dword [esi + 0x808], eax
mov dword [esi + 0x80c], ecx
call fcn.00402790
add esp, 8
call fcn.00402a40
mov eax, esi
call fcn.00402b10
xor edi, edi
cmp dword [esi + 0x924], edi
je 0x407ca6
mov edx, dword [esi + 0x940]
push edx
call fcn.00417cb7
add esp, 4
cmp dword [esi + 0x91c], edi
je 0x407cbd
mov eax, dword [esi + 0x944]
push eax
call fcn.00417cb7
add esp, 4
push esi
call fcn.00417cb7
add esp, 4
mov dword [esi + 0x940], edi
mov dword [esi + 0x944], edi
jmp 0x408165
cmp dword [esp + 0x84], 0xed26ff3a
jne 0x407b9d
cmp word [esp + 0x88], 1
jne 0x407b9d
push 0
push 0
push 0
push edi
call fcn.00418c8a
add esp, 0x10
push 0x3b8c560
push str._s_is_being_treated_as_a_sparse_image
push 0xf84
push str.main
push 4
call fcn.00401210
mov edx, dword [esp + 0x68]
mov eax, dword [esp + 0x64]
mov ecx, dword [0x43641c]
add esp, 0x14
push edx
mov edx, dword [0x436418]
push eax
mov eax, dword [esp + 0x64]
push ecx
mov ecx, dword [esp + 0x64]
push edx
push eax
push ecx
push 0x3b8c560
push edi
call fcn.00402070
add esp, 0x20
jmp 0x408165
push 0x100000
xor ebx, ebx
push ebx
push 0x277a800
call fcn.0041c990
mov ecx, 0xa
mov esi, 0x42afb8
mov edi, 0x277a800
rep movsd dword es:[edi], dword [esi]
mov eax, 0x277a800
add esp, 0xc
movsb byte es:[edi], byte [esi]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x407d88
sub eax, edx
mov ecx, 0xffff7
sub ecx, eax
cmp ecx, 7
jb 0x407dc9
mov edx, dword [str._data__n]
mov cx, word [0x42c000]
mov dword [eax + 0x277a800], edx
mov dl, byte [0x42c002]
mov word [eax + 0x277a804], cx
mov byte [eax + 0x277a806], dl
mov byte [eax + 0x277a807], bl
mov eax, 0x277a800
lea edx, [eax + 1]
cmp byte [0x23893af], bl
je 0x407e17
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x407de0
sub eax, edx
mov ecx, 0xffff7
sub ecx, eax
cmp ecx, 6
jb 0x407e6e
mov edx, dword [0x42d434]
mov cx, word [0x42d438]
mov dword [eax + 0x277a800], edx
mov word [eax + 0x277a804], cx
mov byte [eax + 0x277a806], bl
jmp 0x407e6e
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x407e17
sub eax, edx
mov edx, 0xffff7
sub edx, eax
cmp edx, 9
jb 0x407e56
mov ecx, dword [0x42c004]
mov edx, dword [0x42c008]
mov dword [eax + 0x277a800], ecx
mov cl, byte [0x42c00c]
mov dword [eax + 0x277a804], edx
mov byte [eax + 0x277a808], cl
mov byte [eax + 0x277a809], bl
cmp byte [0x23893ae], bl
je 0x407e6e
mov dword [0x436418], 1
mov dword [0x43641c], ebx
mov edx, dword [0x43641c]
mov eax, dword [0x436418]
push edx
push eax
push str.SECTOR_SIZE_IN_BYTES__lld_
push 0x100000
push 0x253a740
call fcn.00418f10
mov eax, 0x277a800
add esp, 0x14
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x407ea0
sub eax, edx
mov edi, eax
mov eax, 0x253a740
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x407eb3
sub eax, edx
mov ecx, 0xffff7
mov esi, eax
sub ecx, edi
cmp esi, ecx
ja 0x407ee5
push esi
lea edx, [edi + 0x277a800]
push 0x253a740
push edx
call fcn.004207b0
add esp, 0xc
mov byte [edi + esi + 0x277a800], bl
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x38]
push eax
push ecx
push 0x42c044
push 0x100000
push 0x253a740
call fcn.00418f10
mov eax, 0x277a800
add esp, 0x14
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x407f10
sub eax, edx
mov edi, eax
mov eax, 0x253a740
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x407f23
sub eax, edx
mov edx, 0xffff7
mov esi, eax
sub edx, edi
cmp esi, edx
ja 0x407f55
push esi
lea eax, [edi + 0x277a800]
push 0x253a740
push eax
call fcn.004207b0
add esp, 0xc
mov byte [edi + esi + 0x277a800], bl
push 0x3b8c560
push str.filename__s_
push 0x100000
push 0x253a740
call fcn.00418f10
mov eax, 0x277a800
add esp, 0x10
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x407f80
sub eax, edx
mov edi, eax
mov eax, 0x253a740
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x407f93
sub eax, edx
mov ecx, 0xffff7
mov esi, eax
sub ecx, edi
cmp esi, ecx
ja 0x407fc5
push esi
lea edx, [edi + 0x277a800]
push 0x253a740
push edx
call fcn.004207b0
add esp, 0xc
mov byte [edi + esi + 0x277a800], bl
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x50]
push eax
push ecx
push str.physical_partition_number__lld_
push 0x100000
push 0x253a740
call fcn.00418f10
mov eax, 0x277a800
add esp, 0x14
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x407ff0
sub eax, edx
mov edi, eax
mov eax, 0x253a740
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x408003
sub eax, edx
mov edx, 0xffff7
mov esi, eax
sub edx, edi
cmp esi, edx
ja 0x408035
push esi
lea eax, [edi + 0x277a800]
push 0x253a740
push eax
call fcn.004207b0
add esp, 0xc
mov byte [edi + esi + 0x277a800], bl
mov eax, dword [esp + 0x5c]
cmp eax, ebx
jl 0x408052
jg 0x408045
cmp dword [esp + 0x58], ebx
jb 0x408052
mov ecx, dword [esp + 0x58]
push eax
push ecx
push str.start_sector__lld__Version_1_
jmp 0x40805d
mov edx, dword [esp + 0x58]
push eax
push edx
push str.start_sector_NUM_DISK_SECTORS_lld_
push 0x100000
push 0x253a740
call fcn.00418f10
mov eax, 0x277a800
add esp, 0x14
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x408077
sub eax, edx
mov edi, eax
mov eax, 0x253a740
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x408090
sub eax, edx
mov esi, eax
mov eax, 0xffff7
sub eax, edi
cmp esi, eax
ja 0x4080c2
push esi
lea ecx, [edi + 0x277a800]
push 0x253a740
push ecx
call fcn.004207b0
add esp, 0xc
mov byte [edi + esi + 0x277a800], bl
mov eax, 0x277a800
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4080d0
sub eax, edx
mov edx, 0xffff7
sub edx, eax
cmp edx, 0xa
jb 0x408111
mov ecx, dword [str.___n__data_]
mov edx, dword [0x42c740]
mov dword [eax + 0x277a800], ecx
mov cx, word [0x42c744]
mov dword [eax + 0x277a804], edx
mov word [eax + 0x277a808], cx
mov byte [eax + 0x277a80a], bl
mov eax, 0x277a800
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x408120
push ebx
push 0x100000
push ebx
push 0x1000
push ebx
sub eax, edx
mov edx, dword [0x436428]
push eax
push ebx
push ebx
push ebx
push ebx
shl edx, 0xc
add edx, 0x3cccd60
push 0x277a800
push edx
call fcn.0040b150
add esp, 0x30
add dword [0x436428], 1
adc dword [0x43642c], ebx
cmp dword [0x43642c], 0
jg 0x408184
jl 0x408709
cmp dword [0x436428], 0x1f40
jb 0x408709
push 0x3cccd60
push str.1._Too_many_XML_files_in_XMLStringTable__max_is__d
push 0xfbd
jmp 0x4036be
mov eax, 0x238b640
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4081a0
sub eax, edx
cmp eax, 0xa
ja 0x4081b3
mov eax, 0xa
push eax
push str.stresstest
push 0x238b640
call fcn.00417bf7
add esp, 0xc
test eax, eax
jne 0x408709
push 0x3fff
push eax
mov byte [esp + 0x8c0], al
lea eax, [esp + 0x8c1]
push eax
call fcn.0041c990
add esp, 0xc
push str.User_wants_stresstest___Also_enabling_verify_programming._Ensure_this_passes_before_leaving_bring_up_lab_n
push 0xfcb
push str.main
push 5
call fcn.00401210
push str.Zeros1GB.bin
push str.Creating_1GB_all_zero_file__s_n
push 0xfcf
push str.main
push 4
mov byte [0x2389bc8], 1
mov byte [0x2389c40], 1
call fcn.00401210
mov eax, str.Zeros1GB.bin
add esp, 0x24
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x408235
sub eax, ecx
push eax
mov edx, 0x42c9e4
mov ecx, str.Zeros1GB.bin
call fcn.00410ed0
add esp, 4
mov esi, eax
mov edi, 0x10000
jmp 0x408260
push esi
push 1
lea ecx, [esp + 0x8c0]
push 0x4000
push ecx
call fcn.004197d9
push 0x42d9a0
call fcn.0041917f
add esp, 0x14
dec edi
jne 0x408260
push esi
call fcn.00419df4
mov edx, dword [0x43641c]
mov eax, dword [0x436418]
add esp, 4
push edx
push eax
push edi
push 0x40000000
mov dword [0x2389ce8], 0x40000000
mov dword [0x2389cec], edi
call fcn.00427940
or ecx, ebx
mov ebx, eax
mov dword [esp + 0x44], edx
je 0x4082c7
add ebx, 1
adc dword [esp + 0x44], edi
push 0
push 0x40000000
push str.File_size_is__lld_bytes
push 0xfe6
push str.main
push 5
call fcn.00401210
mov ecx, dword [esp + 0x5c]
push ecx
push ebx
push str.NumSectors_needed__lld
push 0xfe7
push str.main
push 5
call fcn.00401210
push 0x100000
push 0
push 0x277a800
call fcn.0041c990
mov ecx, 0xa
mov esi, 0x42afb8
mov edi, 0x277a800
rep movsd dword es:[edi], dword [esi]
mov eax, 0x277a800
add esp, 0x3c
movsb byte es:[edi], byte [esi]
lea ecx, [eax + 1]
mov edi, edi
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x408330
sub eax, ecx
mov edx, 0xffff7
sub edx, eax
cmp edx, 7
jb 0x408372
mov ecx, dword [str._data__n]
mov dx, word [0x42c000]
mov dword [eax + 0x277a800], ecx
mov cl, byte [0x42c002]
mov word [eax + 0x277a804], dx
mov byte [eax + 0x277a806], cl
mov byte [eax + 0x277a807], 0
mov eax, 0x277a800
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x408380
sub eax, edx
mov edx, 0xffff7
sub edx, eax
cmp edx, 9
jb 0x4083c0
mov ecx, dword [0x42c004]
mov edx, dword [0x42c008]
mov dword [eax + 0x277a800], ecx
mov cl, byte [0x42c00c]
mov dword [eax + 0x277a804], edx
mov byte [eax + 0x277a808], cl
mov byte [eax + 0x277a809], 0
mov edx, dword [0x43641c]
mov eax, dword [0x436418]
push edx
push eax
push str.SECTOR_SIZE_IN_BYTES__lld_
push 0x100000
push 0x253a740
call fcn.00418f10
mov eax, 0x277a800
add esp, 0x14
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4083f0
sub eax, edx
mov edi, eax
mov eax, 0x253a740
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x408403
sub eax, edx
mov ecx, 0xffff7
mov esi, eax
sub ecx, edi
cmp esi, ecx
ja 0x408436
push esi
lea edx, [edi + 0x277a800]
push 0x253a740
push edx
call fcn.004207b0
add esp, 0xc
mov byte [edi + esi + 0x277a800], 0
mov eax, dword [esp + 0x44]
push eax
push ebx
push 0x42c044
push 0x100000
push 0x253a740
call fcn.00418f10
mov eax, 0x277a800
add esp, 0x14
lea edx, [eax + 1]
jmp 0x408460
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x408460
sub eax, edx
mov edi, eax
mov eax, 0x253a740
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x408473
sub eax, edx
mov ecx, 0xffff7
mov esi, eax
sub ecx, edi
cmp esi, ecx
ja 0x4084a6
push esi
lea edx, [edi + 0x277a800]
push 0x253a740
push edx
call fcn.004207b0
add esp, 0xc
mov byte [edi + esi + 0x277a800], 0
push str.Zeros1GB.bin
push str.filename__s_
push 0x100000
push 0x253a740
call fcn.00418f10
mov eax, 0x277a800
add esp, 0x10
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4084d0
sub eax, edx
mov edi, eax
mov eax, 0x253a740
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4084e3
sub eax, edx
mov esi, eax
mov eax, 0xffff7
sub eax, edi
cmp esi, eax
ja 0x408516
push esi
lea ecx, [edi + 0x277a800]
push 0x253a740
push ecx
call fcn.004207b0
add esp, 0xc
mov byte [edi + esi + 0x277a800], 0
mov edx, dword [esp + 0x54]
mov eax, dword [esp + 0x50]
push edx
push eax
push str.physical_partition_number__lld_
push 0x100000
push 0x253a740
call fcn.00418f10
mov eax, 0x277a800
add esp, 0x14
lea edx, [eax + 1]
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x408540
sub eax, edx
mov edi, eax
mov eax, 0x253a740
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x408553
sub eax, edx
mov ecx, 0xffff7
mov esi, eax
sub ecx, edi
cmp esi, ecx
ja 0x408586
push esi
lea edx, [edi + 0x277a800]
push 0x253a740
push edx
call fcn.004207b0
add esp, 0xc
mov byte [edi + esi + 0x277a800], 0
mov eax, dword [esp + 0x5c]
test eax, eax
jl 0x4085a4
jg 0x408597
cmp dword [esp + 0x58], 0
jb 0x4085a4
push eax
mov eax, dword [esp + 0x5c]
push eax
push str.start_sector__lld_
jmp 0x4085af
mov ecx, dword [esp + 0x58]
push eax
push ecx
push str.start_sector_NUM_DISK_SECTORS_lld_
push 0x100000
push 0x253a740
call fcn.00418f10
mov eax, 0x277a800
add esp, 0x14
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4085d0
sub eax, edx
mov edi, eax
mov eax, 0x253a740
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4085e3
sub eax, edx
mov edx, 0xffff7
mov esi, eax
sub edx, edi
cmp esi, edx
ja 0x408616
push esi
lea eax, [edi + 0x277a800]
push 0x253a740
push eax
call fcn.004207b0
add esp, 0xc
mov byte [edi + esi + 0x277a800], 0
mov eax, 0x277a800
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x408620
sub eax, edx
mov ecx, 0xffff7
sub ecx, eax
cmp ecx, 0xa
jb 0x408662
mov edx, dword [str.___n__data_]
mov ecx, dword [0x42c740]
mov dword [eax + 0x277a800], edx
mov dx, word [0x42c744]
mov dword [eax + 0x277a804], ecx
mov word [eax + 0x277a808], dx
mov byte [eax + 0x277a80a], 0
xor edi, edi
cmp dword [esp + 0x7c], edi
jl 0x408709
jg 0x40867a
cmp dword [esp + 0x78], edi
jbe 0x408709
mov ecx, dword [0x436428]
mov eax, 0x277a800
lea esi, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x408688
push 0
push 0x100000
push 0
push 0x1000
push 0
sub eax, esi
push eax
push 0
push 0
push 0
push 0
shl ecx, 0xc
add ecx, 0x3cccd60
push 0x277a800
push ecx
call fcn.0040b150
mov ecx, dword [0x436428]
mov eax, dword [0x43642c]
add esp, 0x30
add ecx, 1
adc eax, 0
mov dword [0x436428], ecx
mov dword [0x43642c], eax
test eax, eax
jg 0x40884b
jl 0x4086f3
cmp ecx, 0x1f40
jae 0x40884b
inc edi
mov eax, edi
cdq
cmp edx, dword [esp + 0x7c]
jl 0x408680
jg 0x408709
cmp eax, dword [esp + 0x78]
jb 0x408680
add dword [esp + 0x20], 1
mov eax, dword [esp + 0x24]
adc eax, 0
mov dword [esp + 0x24], eax
cmp eax, dword [esp + 0x64]
jl 0x406441
jg 0x408733
mov eax, dword [esp + 0x60]
cmp dword [esp + 0x20], eax
jb 0x406441
xor ebx, ebx
cmp byte [0x2389c43], 0
je 0x40885f
push str.Remember:_This_is_a_simulation._Nothing_will_be_sent_to_target__COM_PORT_NOT_OPENED
push 0x101a
push str.main
push 2
call fcn.00401210
push 0x42da00
push 0x101b
push str.main
push 2
call fcn.00401210
push 0x42da2c
push 0x101c
push str.main
push 2
call fcn.00401210
push 0x42da58
push 0x101d
push str.main
push 2
call fcn.00401210
add esp, 0x40
push 0x42da84
push 0x101e
push str.main
push 2
call fcn.00401210
push 0x42dab0
push 0x101f
push str.main
push 2
call fcn.00401210
push str.__________________________n
push 0x1020
push str.main
push 2
call fcn.00401210
add esp, 0x30
jmp 0x408972
push 0x3cccd60
push str.1._Too_many_XML_files_in_XMLStringTable__max_is__d
push 0xe87
jmp 0x4036be
push 0x3b8c560
push str.The_file_you_specified_with___sendimage_s_could_not_be_found
push 0xf11
jmp 0x4036be
push 0x3b8c560
push str.Nothing_to_send___File_is_empty___FileSizeNumSectors0_for___sendimage_s___USE___num_sectors200___sectorsizeinbytes512
push 0xf37
jmp 0x4036be
push 0x3cccd60
push str.1._Too_many_XML_files_in_XMLStringTable__max_is__d
push 0xf57
jmp 0x4036be
push 0x3cccd60
push str.1._Too_many_XML_files_in_XMLStringTable__max_is__d
push 0xf76
jmp 0x4036be
push 0x3cccd60
push str.1._Too_many_XML_files_in_XMLStringTable__max_is__d
push 0x100c
jmp 0x4036be
xor ecx, ecx
cmp ecx, 0x23f6ee0
je 0x4094ad
mov eax, 0x23f6ee0
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x408875
sub eax, edx
je 0x4094ad
push 0x23f6ee0
push str.User_wants_to_talk_to_port__s
push 0x102a
push str.main
push 4
call fcn.00401210
add esp, 0x14
call fcn.0040acc0
cmp eax, 1
je 0x4036cd
mov edx, dword [0x2389ca4]
push 0x2539f20
push edx
mov dword [0x2539f20], 0x14
mov dword [0x2539f24], ebx
mov dword [0x2539f28], 0x64
mov dword [0x2539f2c], 1
mov dword [0x2539f30], 0xa
call dword [sym.imp.KERNEL32.dll_SetCommTimeouts]
test eax, eax
jne 0x408912
push str.Error_setting_com_port_timeouts
push 0x1342
push str.SetPortTimeouts
push 1
call fcn.00401210
add esp, 0x10
jmp 0x4036cd
cmp byte [0x2389c42], 0
je 0x408972
push str.Attempting_to_read_4KB_to_flush_out_any_possible_strange_first_log_packet_since_user_chose_ReadBogusDataBeforeSendingConfigure
push 0x1036
push str.main
push 2
call fcn.00401210
push 0x297a8c0
mov eax, 0x1000
call fcn.0040ab60
xor ecx, ecx
add esp, 0x14
mov dword [0x2389c10], eax
mov dword [0x2389c14], ecx
cmp ecx, ebx
jl 0x408972
jg 0x40895a
cmp eax, ebx
jbe 0x408972
push str.main
push eax
push 0x297a8c0
mov ecx, 0x103a
call fcn.0040ae40
add esp, 0xc
cmp byte [0x2389ce1], 0
je 0x408e62
mov eax, 0x3b86b28
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x408987
sub eax, edx
mov ecx, eax
mov eax, str.config_
lea esi, [eax + 1]
lea ebx, [ebx]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x4089a0
push ebx
push 0x800
push ebx
push 0x800
push ebx
push ecx
push ebx
push ebx
push ebx
sub eax, esi
push eax
push 0x3b86b28
push str.config_
call fcn.0040b150
add esp, 0x30
or eax, edx
jne 0x408a0d
mov eax, 0x3b86b28
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4089e0
sub eax, edx
push eax
push 0x3b86b28
push str.Failed_to_copy_string__s_of_length__i_into_ConfigXMLName
push 0x1044
push str.main
push 1
call fcn.00401210
add esp, 0x18
jmp 0x404b49
mov eax, str.config_
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x408a15
push ebx
push 4
push ebx
push 0x800
push ebx
push 4
push ebx
push ebx
push ebx
sub eax, edx
push eax
push str..xml
push str.config_
call fcn.0040b150
add esp, 0x30
or eax, edx
jne 0x408a69
push 4
push str..xml
push str.Failed_to_copy_string__s_of_length__i_into_ConfigXMLName
push 0x104a
push str.main
push 1
call fcn.00401210
add esp, 0x18
jmp 0x404b49
push 0x800
mov edx, 0x42b604
mov ecx, str.config_
call fcn.00410ed0
add esp, 4
push str.__xml_version_1.0_____n
push eax
mov dword [0x2389c00], eax
call fcn.00419576
mov eax, dword [0x2389c00]
push str._configuration__n
push eax
call fcn.00419576
mov ecx, dword [0x2389c00]
push str.______NOTE:_This_is_an__Autogenerated_file_____n
push ecx
call fcn.00419576
mov eax, dword [esp + 0x44]
mov edx, dword [esp + 0x40]
add esp, 0x18
xor esi, esi
xor edi, edi
xor ebx, ebx
mov dword [esp + 0x40], edx
mov dword [esp + 0x44], eax
test eax, eax
jl 0x408b0f
jg 0x408ad4
cmp edx, ebx
jbe 0x408b0f
mov eax, dword [esp + 0x34]
mov ecx, dword [eax + edi*4]
push ecx
mov edx, 0x800
push 0x42c010
sub edx, esi
push edx
lea eax, [esp + esi + 0xc4]
push eax
call fcn.00418f10
add esp, 0x10
add esi, eax
add edi, 1
adc ebx, 0
cmp ebx, dword [esp + 0x44]
jl 0x408ad4
jg 0x408b0f
cmp edi, dword [esp + 0x40]
jb 0x408ad4
mov edx, dword [0x2389c00]
lea ecx, [esp + 0xb8]
push ecx
push str.______NOTE:__s_____n
push edx
call fcn.00419576
mov eax, dword [0x2389c00]
add esp, 0xc
push str.___options__n
push eax
call fcn.00419576
mov ecx, dword [0x2389c00]
push str.____DOWNLOAD_PROTOCOL________FIREHOSE_n
push ecx
call fcn.00419576
add esp, 0x10
cmp byte [0x4363fc], 0
je 0x408b66
mov edx, dword [0x2389c00]
push str.____LOAD_RAW_PROGRAM_FILES___true_n
push edx
jmp 0x408b71
mov eax, dword [0x2389c00]
push str.____LOAD_RAW_PROGRAM_FILES___false_n
push eax
call fcn.00419576
add esp, 8
cmp byte [0x4363fd], 0
je 0x408b90
mov ecx, dword [0x2389c00]
push str.____LOAD_PATCH_PROGRAM_FILES_true_n
push ecx
jmp 0x408b9c
mov edx, dword [0x2389c00]
push str.____LOAD_PATCH_PROGRAM_FILES_false_n
push edx
call fcn.00419576
mov eax, dword [0x2389c00]
add esp, 8
push str.____options__n
push eax
call fcn.00419576
mov ecx, dword [0x2389c00]
push str.___search_paths__n
push ecx
call fcn.00419576
mov edx, dword [0x2389c00]
push 0x23f86e0
push str._____s_n
push edx
call fcn.00419576
xor esi, esi
add esp, 0x1c
xor edi, edi
cmp dword [0x2389bdc], esi
jl 0x408c2b
jg 0x408bf4
cmp dword [0x2389bd8], esi
jbe 0x408c2b
mov ecx, dword [0x2389c00]
mov eax, esi
shl eax, 0xb
add eax, 0x273a800
push eax
push str._____s_n
push ecx
call fcn.00419576
add esp, 0xc
add esi, 1
adc edi, 0
cmp edi, dword [0x2389bdc]
jl 0x408bf4
jg 0x408c2b
cmp esi, dword [0x2389bd8]
jb 0x408bf4
mov edx, dword [0x2389c00]
push str.____search_paths__n
push edx
call fcn.00419576
mov eax, dword [0x2389c00]
push str.___rawprogram__n
push eax
call fcn.00419576
xor esi, esi
add esp, 0x10
xor edi, edi
cmp dword [0x2389cb4], esi
jl 0x408cc6
jg 0x408c70
cmp dword [0x2389cb0], esi
jbe 0x408cc6
jmp 0x408c70
mov eax, esi
imul eax, eax, 0x890
cmp byte [eax + 0x238c6c9], 0x72
jne 0x408cae
mov cl, byte [eax + 0x238c6c8]
cmp byte [0x3b86b28], cl
je 0x408c93
test cl, cl
jne 0x408cae
mov edx, dword [0x2389c00]
lea ecx, [eax + 0x238be48]
push ecx
push str._____s_n
push edx
call fcn.00419576
add esp, 0xc
add esi, 1
adc edi, 0
cmp edi, dword [0x2389cb4]
jl 0x408c70
jg 0x408cc6
cmp esi, dword [0x2389cb0]
jb 0x408c70
mov eax, dword [0x2389c00]
push str.____rawprogram__n
push eax
call fcn.00419576
mov ecx, dword [0x2389c00]
push str.___patch__n
push ecx
call fcn.00419576
xor esi, esi
add esp, 0x10
xor edi, edi
cmp dword [0x2389cb4], esi
jl 0x408d55
jg 0x408d00
cmp dword [0x2389cb0], esi
jbe 0x408d55
mov eax, esi
imul eax, eax, 0x890
cmp byte [eax + 0x238c6c9], 0x70
jne 0x408d3d
mov cl, byte [eax + 0x238c6c8]
cmp byte [0x3b86b28], cl
je 0x408d23
test cl, cl
jne 0x408d3d
lea edx, [eax + 0x238be48]
mov eax, dword [0x2389c00]
push edx
push str._____s_n
push eax
call fcn.00419576
add esp, 0xc
add esi, 1
adc edi, 0
cmp edi, dword [0x2389cb4]
jl 0x408d00
jg 0x408d55
cmp esi, dword [0x2389cb0]
jb 0x408d00
mov ecx, dword [0x2389c00]
push str.____patch__n
push ecx
call fcn.00419576
mov edx, dword [0x2389c00]
push str.___file_mappings__n
push edx
call fcn.00419576
mov eax, dword [0x2389c00]
push str.__NOTE:_Do_not_trust_these_mappings._These_are_only_POSSIBLE_file_path_mappings_n
push eax
call fcn.00419576
mov ecx, dword [0x2389c00]
push str.__NOTE:_If_any_of_the_files_are_also_found_in_the_search_paths_listed_above__that_file_will_be_used_n_n
push ecx
call fcn.00419576
xor ebx, ebx
add esp, 0x20
xor edi, edi
cmp dword [0x2389cb4], ebx
jl 0x408e26
jg 0x408db1
cmp dword [0x2389cb0], ebx
jbe 0x408e26
mov esi, edi
imul esi, esi, 0x890
mov al, byte [esi + 0x238c6c9]
cmp al, 0x72
je 0x408e0e
cmp al, 0x70
je 0x408e0e
mov al, byte [esi + 0x238c6c8]
cmp byte [0x3b86b28], al
je 0x408dd9
test al, al
jne 0x408e0e
mov eax, dword [0x2389c00]
lea edx, [esi + 0x238be88]
push edx
push str._____s
push eax
call fcn.00419576
mov edx, dword [0x2389c00]
add esp, 0xc
lea ecx, [esi + 0x238be48]
push ecx
push 0x42ded0
push edx
call fcn.00419576
add esp, 0xc
add edi, 1
adc ebx, 0
cmp ebx, dword [0x2389cb4]
jl 0x408db1
jg 0x408e26
cmp edi, dword [0x2389cb0]
jb 0x408db1
mov eax, dword [0x2389c00]
push str.____file_mappings__n
push eax
call fcn.00419576
mov ecx, dword [0x2389c00]
push str.____configuration__n
push ecx
call fcn.00419576
mov edx, dword [0x2389c00]
push edx
call fcn.00419df4
add esp, 0x14
mov dword [0x2389c00], 0
xor ebx, ebx
cmp byte [0x23893ab], 0
je 0x408e96
push 0x800
mov edx, 0x42b604
mov ecx, str.command_trace.txt
call fcn.00410ed0
add esp, 4
push eax
mov dword [0x2389bf8], eax
call fcn.00419df4
add esp, 4
mov dword [0x2389bf8], ebx
mov eax, dword [0x3a85a1c]
mov ecx, dword [0x3a85a18]
push ebx
push 0x20
push eax
push ecx
call fcn.00421560
mov dword [0x2389c38], eax
sub eax, 0x36
mov dword [0x2389c3c], edx
sbb edx, ebx
cmp byte [0x2389cdb], 0
mov dword [0x2389c20], eax
mov dword [0x2389c24], edx
je 0x408ef7
push 0x10
mov edx, 0x42c9e4
mov ecx, str.DIGEST_TABLE.bin
call fcn.00410ed0
add esp, 4
push eax
mov dword [0x2389bfc], eax
call fcn.00419df4
add esp, 4
mov dword [0x2389bfc], ebx
call fcn.0040e990
mov eax, 0x277a800
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x408f04
push ebx
push 0x100000
push ebx
push 0x1000
push ebx
sub eax, edx
push eax
push ebx
push ebx
push ebx
push ebx
push 0x277a800
push 0x3cccd60
call fcn.0040b150
add esp, 0x30
cmp byte [0x2389bc9], 0
je 0x408f3f
call fcn.0040e7f0
call fcn.00416180
mov esi, dword [sym.imp.KERNEL32.dll_GetTickCount]
call esi
mov ecx, eax
mov eax, 0x10624dd3
mul ecx
shr edx, 6
mov dword [0x297a8a0], edx
imul edx, edx, 0x3e8
sub ecx, edx
imul ecx, ecx, 0x3e8
cmp byte [0x436421], 0
mov dword [0x297a8a4], ecx
je 0x408fb1
push str.Sorting_TAGS_to_ensure_order_is__configure___erase___others___patch___power_
push 0x10d4
push str.main
push 4
call fcn.00401210
push str.If__you_dont_want_this__use___dontsorttags_n
push 0x10d5
push str.main
push 4
call fcn.00401210
add esp, 0x20
call fcn.00415e10
jmp 0x408fca
push str.Not_sorting_tags_since___dontsorttags_was_provided_n
push 0x10d9
push str.main
push 4
call fcn.00401210
add esp, 0x10
cmp byte [0x23893ac], 0
je 0x4090ac
mov dl, byte [0x2389c43]
mov byte [0x2389cd8], dl
mov byte [0x2389c43], 1
mov byte [0x2389ce0], 1
mov dword [0x2389bc0], ebx
mov dword [0x2389bc4], ebx
call fcn.00409f80
call fcn.0040ff90
cmp byte [0x2389c40], 0
mov eax, dword [0x2389bc0]
mov edx, dword [0x2389bc4]
mov dword [0x2389bb8], eax
mov dword [0x2389bbc], edx
je 0x409063
mov dword [esp + 0x60], eax
mov eax, edx
mov ecx, edx
and eax, 0x7fffffff
mov dword [esp + 0x64], eax
fild qword [esp + 0x60]
and ecx, 0x80000000
mov dword [esp + 0x64], ecx
mov dword [esp + 0x60], ebx
fild qword [esp + 0x60]
fchs
faddp st(1)
fadd st(0), st(0)
call fcn.00428a56
mov dword [0x2389bb8], eax
mov dword [0x2389bbc], edx
cmp edx, ebx
ja 0x40906b
cmp eax, ebx
jbe 0x40909b
push ebx
push 0x100000
push edx
push eax
mov edx, 0x253a740
call fcn.00414560
push 0x253a740
push str._n_nTotal_to_be_tansferd_with__program__or__read__is__s_n_n
push 0x10f3
push str.main
push 4
call fcn.00401210
add esp, 0x24
mov al, byte [0x2389cd8]
mov byte [0x2389c43], al
mov byte [0x2389ce0], 0
mov dword [0x2389bc0], ebx
mov dword [0x2389bc4], ebx
call fcn.00409f80
call fcn.0040ff90
call esi
mov ecx, eax
mov eax, 0x10624dd3
mul ecx
shr edx, 6
mov dword [0x24f8ee0], edx
imul edx, edx, 0x3e8
sub ecx, edx
imul ecx, ecx, 0x3e8
cmp byte [0x2389c43], 0
mov dword [0x24f8ee4], ecx
jne 0x409109
mov eax, dword [0x2389ca4]
cmp eax, ebx
je 0x409109
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [0x2389ca4], ebx
cmp byte [0x2389cdb], 0
je 0x409117
call fcn.004094e0
push 0x42e000
push 0x110c
push str.main
push 2
call fcn.00401210
push str.Files_used_and_their_paths
push 0x110d
push str.main
push 2
call fcn.00401210
add esp, 0x20
xor eax, eax
xor edi, edi
cmp dword [0x2389bd4], ebx
jl 0x40919f
jg 0x409160
cmp dword [0x2389bd0], ebx
jbe 0x40919f
lea esp, [esp]
mov esi, eax
add esi, 1
adc edi, ebx
shl eax, 0xb
add eax, 0x2a7a8e0
push eax
push edi
push esi
push str._3lld__s
push 0x1111
push str.main
push 2
call fcn.00401210
add esp, 0x1c
mov eax, esi
cmp edi, dword [0x2389bd4]
jl 0x409160
jg 0x40919f
cmp eax, dword [0x2389bd0]
jb 0x409160
push 0x42b81c
call fcn.0041917f
mov eax, 0x287a8a0
add esp, 4
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4091b4
sub eax, edx
je 0x40927f
push 0x431a3c
call fcn.0041917f
add esp, 4
push 0x431d5c
call fcn.0041917f
add esp, 4
push str._t_________________________________________n
call fcn.0041917f
add esp, 4
push str._t____________________________n
call fcn.0041917f
add esp, 4
push str._t__V__V_____________________n
call fcn.0041917f
add esp, 4
push str._t__________________________n
call fcn.0041917f
add esp, 4
push str._t________________________________________n
call fcn.0041917f
add esp, 4
push str._t________________________________________n_n
call fcn.0041917f
add esp, 4
push 0x42e000
push 0x1119
push str.main
push 2
call fcn.00401210
push str.NOTE:_There_were_WARNINGS___Repeated_here__but_please_see_log_for_more_detail
push 0x111a
push str.main
push 2
call fcn.00401210
push 0x287a8a0
push str._s_nNOTE:_There_were_WARNINGS___Repeated_above__but_please_see_log_for_more_detail_n_n_n
call fcn.0041917f
push 0x42e000
push 0x111d
push str.main
push 2
call fcn.00401210
add esp, 0x38
cmp byte [0x2389c43], 0
je 0x40932c
push str.Remember:_This_was_a_simulation._Nothing_was_sent_to_a_target
push 0x1122
push str.main
push 2
call fcn.00401210
push 0x42da00
push 0x1123
push str.main
push 2
call fcn.00401210
push 0x42da2c
push 0x1124
push str.main
push 2
call fcn.00401210
push 0x42da58
push 0x1125
push str.main
push 2
call fcn.00401210
add esp, 0x40
push 0x42da84
push 0x1126
push str.main
push 2
call fcn.00401210
push 0x42dab0
push 0x1127
push str.main
push 2
call fcn.00401210
push str.__________________________n
push 0x1128
push str.main
push 2
call fcn.00401210
add esp, 0x30
push str.____________________done_
push 0x112c
push str.main
push 2
call fcn.00401210
push 0x42e16c
push 0x112d
push str.main
push 2
call fcn.00401210
push 0x42e188
push 0x112e
push str.main
push 2
call fcn.00401210
push 0x42e1a4
push 0x112f
push str.main
push 2
call fcn.00401210
add esp, 0x40
push str._________________
push 0x1130
push str.main
push 2
call fcn.00401210
push str._______________
push 0x1131
push str.main
push 2
call fcn.00401210
add esp, 0x20
cmp byte [0x23893b2], 0
je 0x4093cb
push str.Not_Finished_Successfully___There_were_ERRORS_n
push 0x1134
jmp 0x4093d5
push str.All_Finished_Successfully_n
push 0x1136
push str.main
push 2
call fcn.00401210
fldz
mov ecx, dword [0x2389bc4]
mov edx, dword [0x2389bc0]
add esp, 0x10
sub esp, 8
fstp qword [esp]
push 4
push ecx
push edx
mov edx, 0x24f8ee0
mov ecx, 0x297a8a0
call fcn.00413d20
add esp, 0x14
cmp byte [0x2389ce1], 0
je 0x40943a
push str.config_
push str.config_
push str._n_n_nCreated__s._n_nNOTE:_You_dont_need_to_use___contentsxml_anymore._YOU_CAN_NOW_USE___sendxml_s_n_n
push 0x1140
push str.main
push 2
call fcn.00401210
add esp, 0x18
cmp byte [0x23893b1], 0
je 0x409493
cmp dword [0x43640c], ebx
jl 0x409493
push 0x42e2b8
push 0x1146
push str.main
push 4
call fcn.00401210
mov eax, dword [0x43640c]
imul eax, eax, 0x890
lea ecx, [eax + 0x238be88]
push ecx
lea edx, [eax + 0x238be48]
push edx
push str.QSaharaServer.exe__p_.COM27__s_13:_s__b__s_n
push 0x1147
push str.main
push 4
call fcn.00401210
add esp, 0x28
cmp byte [0x23893b2], 0
mov byte [0x436420], 0
jne 0x4036cd
push ebx
jmp 0x4036cf
push str.Port_device_name_not_specified__Example:___port.COM19
push 0x1026
push str.main
push 1
call fcn.00401210
add esp, 0x10
jmp 0x4036cd
push str.ERROR:_Calling_getcwd___failed
call fcn.0041917f
add esp, 4
push esi
call fcn.0041a13d
int3