Function at 0x401d20
Capabilities:
Terminate process

Disassembly:
lea ecx, [esp + 4]
and esp, 0xfffffff0
xor eax, eax
push dword [ecx - 4]
push ebp
mov ebp, esp
push edi
lea edi, [ebp - 0x268]
push esi
push ebx
push ecx
sub esp, 0x298
mov esi, dword [ecx]
mov ebx, dword [ecx + 4]
mov ecx, 0xa
rep stosd dword es:[edi], eax
lea eax, [ebp - 0x238]
movd xmm1, eax
lea eax, [ebp - 0x240]
punpckldq xmm1, xmm1
cmp esi, 1
mov dword [ebp - 0x27c], esi
movd xmm0, eax
lea eax, [ebp - 0x228]
punpckldq xmm0, xmm0
punpcklqdq xmm0, xmm1
movups xmmword [ebp - 0x240], xmm0
movd xmm1, eax
lea eax, [ebp - 0x230]
punpckldq xmm1, xmm1
movd xmm0, eax
punpckldq xmm0, xmm0
punpcklqdq xmm0, xmm1
movups xmmword [ebp - 0x230], xmm0
jle 0x40241c
mov esi, 1
mov edx, dword [ebx + esi*4]
lea edi, [esi*4]
movzx ecx, word [edx]
test cx, cx
je 0x401e10
mov eax, edx
lea esi, [esi]
add eax, 2
cmp word [eax], 0
jne 0x401dc8
sub eax, edx
cmp eax, 4
jne 0x401e10
and ecx, 0xfffffffd
cmp cx, 0x2d
jne 0x401e10
movzx eax, word [edx + 2]
sub eax, 0x3f
cmp ax, 0x39
ja case.0x401df5.1
movzx eax, ax
jmp dword [eax*4 + 0x405898]
lea eax, [esi + 1]
cmp dword [ebp - 0x27c], eax
jg 0x402300
lea esi, [esi]
nop
cmp dword [ebp - 0x27c], esi
mov edi, dword [ebp - 0x27c]
jle 0x401e35
nop
mov edx, dword [ebx + esi*4]
lea eax, [ebp - 0x228]
add esi, 1
call fcn.004010f0
cmp edi, esi
jne 0x401e20
mov eax, dword [ebp - 0x268]
test eax, eax
je 0x40241c
mov esi, dword [ebp - 0x264]
test esi, esi
je 0x4020b7
mov ebx, dword [ebp - 0x250]
test ebx, ebx
jne 0x401eb0
mov edx, dword [ebp - 0x24c]
or edx, dword [ebp - 0x248]
jne 0x401fa6
mov ecx, dword [ebp - 0x25c]
mov edx, 1
test ecx, ecx
jne 0x401ec7
mov ecx, dword [ebp - 0x254]
or ecx, dword [ebp - 0x258]
jne 0x401ec7
test byte [section..data], 2
jne 0x402ac8
mov dword [esp], str.Usage:_msidb__OPTION_..._OPTION_...__TABLE_..._TABLE__nOptions:_n____________________Show_this_usage_message_and_exit._n___a_file.cab_______Add_stream_cabinet_file_to__Streams_table._n___c________________Create_database_file__instead_of_opening_existing_file_._n___d_package.msi____Path_to_the_database_file._n___e________________Export_tables_from_database._n___f_folder_________Folder_in_which_to_open_save_the_tables._n___i________________Import_tables_into_database._n___k_file.cab_______Kill__remove__stream_cabinet_file_from__Streams_table._n___s________________Export_with_short_filenames__eight_character_max_._n___x_file.cab_______Extract_stream_cabinet_file_from__Streams_table._n
call fcn.004011d0
jmp 0x4021d3
lea edi, [ebp - 0x228]
mov edx, 3
cmp dword [ebp - 0x228], edi
je 0x402105
mov dword [esp + 4], edx
lea ecx, [ebp - 0x260]
mov dword [esp], eax
mov dword [esp + 8], ecx
call sub.msi.dll_MsiOpenDatabaseW
sub esp, 0xc
mov ebx, eax
test eax, eax
jne 0x402452
mov eax, dword [ebp - 0x25c]
test eax, eax
jne 0x402160
mov eax, dword [ebp - 0x248]
test eax, eax
jne 0x40222f
mov edi, dword [ebp - 0x258]
test edi, edi
jne 0x40231e
mov esi, dword [ebp - 0x24c]
test esi, esi
jne 0x4026a0
mov ebx, dword [ebp - 0x254]
mov eax, dword [ebp - 0x260]
test ebx, ebx
jne 0x4026d8
test eax, eax
je 0x402535
mov dword [esp], eax
call sub.msi.dll_MsiDatabaseCommit
sub esp, 4
test eax, eax
jne 0x402528
mov eax, dword [ebp - 0x260]
xor ebx, ebx
mov dword [esp], eax
call sub.msi.dll_MsiCloseHandle
sub esp, 4
test eax, eax
jne 0x4021f9
lea eax, [ebp - 0x240]
call section..text
lea eax, [ebp - 0x238]
call section..text
lea eax, [ebp - 0x230]
call section..text
lea eax, [ebp - 0x228]
call section..text
lea esp, [ebp - 0x10]
mov eax, ebx
pop ecx
pop ebx
pop esi
pop edi
pop ebp
lea esp, [ecx - 4]
ret
lea edi, [ebp - 0x228]
cmp dword [ebp - 0x228], edi
je 0x40287b
mov edx, 1
jmp 0x401ec7
mov dword [ebp - 0x244], 1
mov eax, 1
add esi, eax
cmp dword [ebp - 0x27c], esi
jg 0x401dad
jmp 0x401e35
lea eax, [esi + 1]
cmp dword [ebp - 0x27c], eax
jle 0x401e10
mov edx, dword [ebx + edi + 4]
lea eax, [ebp - 0x230]
mov dword [ebp - 0x254], 1
call fcn.004010f0
jmp 0x402037
mov dword [ebp - 0x24c], 1
jmp 0x401fcc
lea eax, [esi + 1]
cmp dword [ebp - 0x27c], eax
jle 0x401e10
mov eax, dword [ebx + edi + 4]
mov dword [ebp - 0x264], eax
mov eax, 2
jmp 0x401fd1
mov dword [ebp - 0x248], 1
jmp 0x401fcc
lea eax, [esi + 1]
cmp dword [ebp - 0x27c], eax
jle 0x401e10
mov eax, dword [ebx + edi + 4]
mov dword [ebp - 0x268], eax
jmp 0x402037
mov dword [ebp - 0x250], 1
jmp 0x401fcc
lea eax, [esi + 1]
cmp dword [ebp - 0x27c], eax
jle 0x401e10
mov edx, dword [ebx + edi + 4]
lea eax, [ebp - 0x240]
mov dword [ebp - 0x25c], 1
call fcn.004010f0
jmp 0x402037
mov dword [esp], str.Usage:_msidb__OPTION_..._OPTION_...__TABLE_..._TABLE__nOptions:_n____________________Show_this_usage_message_and_exit._n___a_file.cab_______Add_stream_cabinet_file_to__Streams_table._n___c________________Create_database_file__instead_of_opening_existing_file_._n___d_package.msi____Path_to_the_database_file._n___e________________Export_tables_from_database._n___f_folder_________Folder_in_which_to_open_save_the_tables._n___i________________Import_tables_into_database._n___k_file.cab_______Kill__remove__stream_cabinet_file_from__Streams_table._n___s________________Export_with_short_filenames__eight_character_max_._n___x_file.cab_______Extract_stream_cabinet_file_from__Streams_table._n
call fcn.004011d0
mov dword [esp], 0
call dword [sym.imp.ucrtbase.dll_exit]
mov edx, dword [ebp - 0x25c]
or edx, dword [ebp - 0x254]
or edx, dword [ebp - 0x258]
jne 0x401e51
test byte [section..data], 2
jne 0x40297e
mov dword [esp], str.Usage:_msidb__OPTION_..._OPTION_...__TABLE_..._TABLE__nOptions:_n____________________Show_this_usage_message_and_exit._n___a_file.cab_______Add_stream_cabinet_file_to__Streams_table._n___c________________Create_database_file__instead_of_opening_existing_file_._n___d_package.msi____Path_to_the_database_file._n___e________________Export_tables_from_database._n___f_folder_________Folder_in_which_to_open_save_the_tables._n___i________________Import_tables_into_database._n___k_file.cab_______Kill__remove__stream_cabinet_file_from__Streams_table._n___s________________Export_with_short_filenames__eight_character_max_._n___x_file.cab_______Extract_stream_cabinet_file_from__Streams_table._n
mov ebx, 1
call fcn.004011d0
mov eax, dword [ebp - 0x260]
test eax, eax
jne 0x401f59
mov ebx, 1
jmp 0x401f6c
mov ecx, dword [ebp - 0x25c]
test ecx, ecx
jne 0x401ec7
mov ecx, dword [ebp - 0x254]
or ecx, dword [ebp - 0x258]
jne 0x401ec7
test byte [section..data], 2
je 0x4021d3
mov dword [esp + 0xc], str.No_tables_specified._n
mov dword [esp + 8], str.valid_state
mov dword [esp + 4], 0x404000
mov dword [esp], 1
call fcn.00401060
jmp 0x4021d3
mov ebx, dword [ebp - 0x240]
lea eax, [ebp - 0x240]
cmp ebx, eax
je 0x401ef8
lea edi, [ebp - 0x218]
mov dword [ebp - 0x27c], edi
mov eax, dword [ebp - 0x27c]
mov esi, dword [ebx + 8]
mov dword [ebp - 0x218], 0
mov dword [esp + 4], str.INSERT_INTO__Streams__Name__Data__VALUES_______
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x260]
mov dword [esp], eax
call sub.msi.dll_MsiDatabaseOpenViewW
sub esp, 0xc
test eax, eax
je 0x402360
test byte [section..data], 2
jne 0x4024e9
mov eax, dword [ebp - 0x218]
test eax, eax
jne 0x4023b4
mov eax, dword [ebp - 0x260]
test eax, eax
je 0x4020fb
mov dword [esp], eax
mov ebx, 1
call sub.msi.dll_MsiCloseHandle
sub esp, 4
test eax, eax
je 0x401f6c
test byte [section..data], 4
je 0x401f6c
mov dword [esp + 0xc], str.Failed_to_close_database_handle._n
mov dword [esp + 8], str.close_database
mov dword [esp + 4], 0x404000
mov dword [esp], 2
call fcn.00401060
jmp 0x401f6c
mov esi, dword [ebp - 0x228]
lea eax, [ebp - 0x228]
cmp esi, eax
je 0x401f06
mov dword [esp + 4], 0x4054f0
mov eax, dword [esi + 8]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_lstrcmpW]
sub esp, 8
test eax, eax
jne 0x4024f6
mov dword [ebp - 0x274], 0
lea eax, [ebp - 0x274]
mov dword [esp + 8], eax
mov dword [esp + 4], str.SELECT_Name_FROM__Tables
mov eax, dword [ebp - 0x260]
mov dword [esp], eax
call sub.msi.dll_MsiDatabaseOpenViewW
sub esp, 0xc
test eax, eax
je 0x402595
test byte [section..data], 2
jne 0x402907
mov eax, dword [ebp - 0x274]
test eax, eax
je 0x4021d3
mov dword [esp], eax
call sub.msi.dll_MsiViewClose
sub esp, 4
test eax, eax
je 0x4021d3
test byte [section..data], 2
je 0x4021d3
mov dword [esp + 0xc], str.Failed_to_close__Streams_table._n
mov dword [esp + 8], str.export_all_tables
mov dword [esp + 4], 0x404000
mov dword [esp], 1
call fcn.00401060
jmp 0x4021d3
mov edx, dword [ebx + edi + 4]
lea eax, [ebp - 0x238]
mov dword [ebp - 0x258], 1
call fcn.004010f0
jmp 0x402037
mov ebx, dword [ebp - 0x238]
lea eax, [ebp - 0x238]
cmp ebx, eax
je 0x401f14
lea esi, [esi]
mov edx, dword [ebx + 8]
lea eax, [ebp - 0x268]
call fcn.004014c0
test eax, eax
je 0x4021d3
mov ebx, dword [ebx]
lea eax, [ebp - 0x238]
cmp ebx, eax
jne 0x402338
jmp 0x401f14
mov dword [esp], 2
call sub.msi.dll_MsiCreateRecord
sub esp, 4
mov edi, eax
test eax, eax
jne 0x4023c4
test byte [section..data], 2
je 0x4021c5
mov dword [esp + 0xc], str.Failed_to_create_MSI_record._n
mov dword [esp + 8], str.add_stream
mov dword [esp + 4], section..data
mov dword [esp], 1
call fcn.00401060
mov eax, dword [ebp - 0x218]
test eax, eax
je 0x4021d3
mov dword [esp], eax
call sub.msi.dll_MsiViewClose
sub esp, 4
jmp 0x4021d3
mov dword [esp + 4], 0x2f
mov dword [esp], esi
call dword [sym.imp.ucrtbase.dll_wcsrchr]
test eax, eax
je 0x4026b8
add eax, 2
mov dword [esp + 8], eax
mov dword [esp + 4], 1
mov dword [esp], edi
call sub.msi.dll_MsiRecordSetStringW
sub esp, 0xc
test eax, eax
je 0x402540
test byte [section..data], 2
jne 0x4029a7
mov dword [esp], edi
call sub.msi.dll_MsiCloseHandle
sub esp, 4
jmp 0x4021c5
test byte [section..data], 1
je 0x4021d3
mov dword [esp + 0xc], str.GUI_operation_is_not_currently_supported._n
mov dword [esp + 8], str.valid_state
mov dword [esp + 4], 0x404000
mov dword [esp], 0
call fcn.00401060
jmp 0x4021d3
test byte [section..data], 2
je 0x4021d3
mov eax, dword [ebp - 0x268]
call fcn.00401290
mov dword [esp + 0x14], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], str.Failed_to_open_database__s__error__d_n
mov dword [esp + 8], 0x4059fc
mov dword [esp + 4], 0x404000
mov dword [esp], 1
call fcn.00401060
test byte [section..data], 2
je 0x4021d3
mov eax, dword [ebp - 0x268]
call fcn.00401290
mov dword [esp + 0xc], str.Failed_to_open_database__s._n
mov dword [esp + 0x10], eax
mov dword [esp + 8], str.wmain
mov dword [esp + 4], 0x404000
mov dword [esp], 1
call fcn.00401060
mov eax, dword [ebp - 0x260]
test eax, eax
jne 0x4021e1
jmp 0x4020fb
mov dword [esp + 0xc], str.Failed_to_open__Streams_table._n
jmp 0x40238a
mov edx, dword [esi + 8]
lea eax, [ebp - 0x268]
call fcn.004018f0
test eax, eax
je 0x4021d3
mov esi, dword [esi]
lea eax, [ebp - 0x228]
cmp esi, eax
jne 0x402243
jmp 0x401f06
test byte [section..data], 2
jne 0x4028a0
xor ebx, ebx
jmp 0x401f6c
mov dword [esp + 8], esi
mov dword [esp + 4], 2
mov dword [esp], edi
call sub.msi.dll_MsiRecordSetStreamW
sub esp, 0xc
test eax, eax
je 0x402830
test byte [section..data], 2
je 0x40240c
mov dword [esp + 0xc], str.Failed_to_add_stream_to_MSI_record._n
mov dword [esp + 8], str.add_stream
mov dword [esp + 4], 0x404000
mov dword [esp], 1
call fcn.00401060
jmp 0x40240c
mov dword [esp + 4], 0
mov eax, dword [ebp - 0x274]
mov dword [esp], eax
call sub.msi.dll_MsiViewExecute
sub esp, 8
test eax, eax
jne 0x402948
lea edi, [ebp - 0x270]
lea ebx, [ebp - 0x218]
jmp 0x402633
test eax, eax
jne 0x402a26
mov dword [ebp - 0x26c], 0x100
lea eax, [ebp - 0x26c]
mov dword [esp + 0xc], eax
mov dword [esp + 8], ebx
mov dword [esp + 4], 1
mov eax, dword [ebp - 0x270]
mov dword [esp], eax
call sub.msi.dll_MsiRecordGetStringW
sub esp, 0x10
test eax, eax
jne 0x402a92
lea eax, [ebp - 0x268]
mov edx, ebx
call fcn.004018f0
test eax, eax
je 0x4022a4
mov eax, dword [ebp - 0x270]
mov dword [esp], eax
call sub.msi.dll_MsiCloseHandle
sub esp, 4
test eax, eax
jne 0x402a5c
mov dword [ebp - 0x270], 0
mov dword [esp + 4], edi
mov eax, dword [ebp - 0x274]
mov dword [esp], eax
call sub.msi.dll_MsiViewFetch
sub esp, 8
cmp eax, 0x103
jne 0x4025c4
lea eax, [ebp - 0x268]
mov edx, str._SummaryInformation
call fcn.004018f0
test eax, eax
je 0x4022a4
mov eax, dword [ebp - 0x274]
test eax, eax
je 0x40250c
mov dword [esp], eax
call sub.msi.dll_MsiViewClose
sub esp, 4
test eax, eax
je 0x40250c
jmp 0x4022c5
lea eax, [ebp - 0x268]
call fcn.00401a50
test eax, eax
jne 0x401f22
jmp 0x4021d3
mov dword [esp + 4], 0x5c
mov dword [esp], esi
call dword [sym.imp.ucrtbase.dll_wcsrchr]
mov edx, eax
lea eax, [eax + 2]
test edx, edx
cmove eax, esi
jmp 0x4023e0
mov ebx, dword [ebp - 0x230]
lea ecx, [ebp - 0x230]
lea edi, [ebp - 0x218]
cmp ebx, ecx
je 0x401f36
mov esi, dword [ebx + 8]
mov dword [ebp - 0x218], 0
mov dword [esp + 8], edi
mov dword [esp + 4], str.DELETE_FROM__Streams_WHERE_Name___
mov eax, dword [ebp - 0x260]
mov dword [esp], eax
call sub.msi.dll_MsiDatabaseOpenViewW
sub esp, 0xc
test eax, eax
je 0x402742
test byte [section..data], 2
je 0x4021c5
mov dword [esp + 0xc], str.Failed_to_open__Streams_table._n
mov dword [esp + 8], str.kill_stream
jmp 0x402392
mov dword [esp], 1
call sub.msi.dll_MsiCreateRecord
sub esp, 4
test eax, eax
jne 0x40276c
test byte [section..data], 2
je 0x4021c5
mov dword [esp + 0xc], str.Failed_to_create_MSI_record._n
jmp 0x402735
mov dword [esp + 8], esi
mov dword [esp + 4], 1
mov dword [esp], eax
mov dword [ebp - 0x27c], eax
call sub.msi.dll_MsiRecordSetStringW
mov edx, dword [ebp - 0x27c]
sub esp, 0xc
test eax, eax
je 0x4027b0
test byte [section..data], 2
jne 0x40293e
mov dword [esp], edx
call sub.msi.dll_MsiCloseHandle
sub esp, 4
jmp 0x4021c5
mov dword [esp + 4], edx
mov eax, dword [ebp - 0x218]
mov dword [ebp - 0x27c], edx
mov dword [esp], eax
call sub.msi.dll_MsiViewExecute
mov edx, dword [ebp - 0x27c]
sub esp, 8
test eax, eax
jne 0x4028cb
mov dword [esp], edx
call sub.msi.dll_MsiCloseHandle
mov eax, dword [ebp - 0x218]
sub esp, 4
test eax, eax
jne 0x402a16
mov ebx, dword [ebx]
lea eax, [ebp - 0x230]
cmp ebx, eax
jne 0x4026f2
mov eax, dword [ebp - 0x260]
jmp 0x401f36
mov dword [esp], str.Usage:_msidb__OPTION_..._OPTION_...__TABLE_..._TABLE__nOptions:_n____________________Show_this_usage_message_and_exit._n___a_file.cab_______Add_stream_cabinet_file_to__Streams_table._n___c________________Create_database_file__instead_of_opening_existing_file_._n___d_package.msi____Path_to_the_database_file._n___e________________Export_tables_from_database._n___f_folder_________Folder_in_which_to_open_save_the_tables._n___i________________Import_tables_into_database._n___k_file.cab_______Kill__remove__stream_cabinet_file_from__Streams_table._n___s________________Export_with_short_filenames__eight_character_max_._n___x_file.cab_______Extract_stream_cabinet_file_from__Streams_table._n
call fcn.004011d0
mov dword [esp], 1
call dword [sym.imp.ucrtbase.dll_exit]
lea esi, [esi]
mov dword [esp + 4], edi
mov eax, dword [ebp - 0x218]
mov dword [esp], eax
call sub.msi.dll_MsiViewExecute
sub esp, 8
test eax, eax
jne 0x4029e0
mov dword [esp], edi
call sub.msi.dll_MsiCloseHandle
mov eax, dword [ebp - 0x218]
sub esp, 4
test eax, eax
jne 0x4029d0
mov ebx, dword [ebx]
lea eax, [ebp - 0x240]
cmp ebx, eax
jne 0x402180
jmp 0x401ef8
mov edx, dword [ebp - 0x25c]
test edx, edx
jne 0x401fb8
mov edx, dword [ebp - 0x258]
or edx, dword [ebp - 0x254]
je 0x402125
jmp 0x401fb8
mov dword [esp + 0xc], str.Failed_to_commit_changes_to_database._n
xor ebx, ebx
mov dword [esp + 8], str.close_database
mov dword [esp + 4], 0x404000
mov dword [esp], 1
call fcn.00401060
jmp 0x401f6c
test byte [section..data], 2
je 0x4027a0
mov dword [esp + 0xc], str.Failed_to_delete_stream_from__Streams_table._n
mov dword [esp + 8], str.kill_stream
mov dword [esp + 4], 0x404000
mov dword [esp], 1
call fcn.00401060
mov edx, dword [ebp - 0x27c]
jmp 0x4027a0
mov dword [esp + 0xc], str.Failed_to_open__Tables_table._n
mov dword [esp + 8], str.export_all_tables
mov dword [esp + 4], 0x404000
mov dword [esp], 1
call fcn.00401060
mov eax, dword [ebp - 0x274]
test eax, eax
je 0x4021d3
jmp 0x4022b2
mov dword [esp + 0xc], str.Failed_to_add_stream_filename_to_MSI_record._n
jmp 0x4028e0
test byte [section..data], 2
je 0x4022a4
mov dword [esp + 0xc], str.Failed_to_query_list_from__Tables_table._n
mov dword [esp + 8], str.export_all_tables
mov dword [esp + 4], 0x404000
mov dword [esp], 1
call fcn.00401060
jmp 0x4022a4
mov dword [esp + 0xc], str.No_table_folder_specified___f_option_._n
mov dword [esp + 8], str.valid_state
mov dword [esp + 4], 0x404000
mov dword [esp], 1
call fcn.00401060
jmp 0x4020dc
mov dword [esp + 0xc], str.Failed_to_add_stream_filename_to_MSI_record._n
mov dword [esp + 8], str.add_stream
mov dword [esp + 4], 0x404000
mov dword [esp], 1
call fcn.00401060
jmp 0x40240c
mov dword [esp], eax
call sub.msi.dll_MsiViewClose
sub esp, 4
jmp 0x402866
test byte [section..data], 2
je 0x40240c
mov dword [esp + 0xc], str.Failed_to_add_stream_to__Streams_table._n
mov dword [esp + 8], str.add_stream
mov dword [esp + 4], 0x404000
mov dword [esp], 1
call fcn.00401060
jmp 0x40240c
mov dword [esp], eax
call sub.msi.dll_MsiViewClose
sub esp, 4
jmp 0x4027f2
test byte [section..data], 2
je 0x4022a4
mov dword [esp + 0xc], str.Failed_to_query_row_from__Tables_table._n
mov dword [esp + 8], str.export_all_tables
mov dword [esp + 4], 0x404000
mov dword [esp], 1
call fcn.00401060
jmp 0x4022a4
test byte [section..data], 2
je 0x4022a4
mov dword [esp + 0xc], str.Failed_to_close_record_handle._n
mov dword [esp + 8], str.export_all_tables
mov dword [esp + 4], 0x404000
mov dword [esp], 1
call fcn.00401060
jmp 0x4022a4
test byte [section..data], 2
je 0x4022a4
mov dword [esp + 0xc], str.Failed_to_retrieve_name_string._n
mov dword [esp + 8], str.export_all_tables
mov dword [esp + 4], 0x404000
mov dword [esp], 1
call fcn.00401060
jmp 0x4022a4
mov dword [esp + 0xc], str.No_mode_flag_specified___a___c___e___i___k___x_._n
mov dword [esp + 8], str.valid_state
mov dword [esp + 4], 0x404000
mov dword [esp], 1
call fcn.00401060
jmp 0x401e97