Function at 0x401000
Capabilities:
Reference http user-agent string

Disassembly:
push 0x5c
push 0
push 0x530518
call sub.MSVCRT.dll_memset
add esp, 0xc
push 0
call sub.KERNEL32.dll_GetModuleHandleW
mov dword [0x53051c], eax
push 0
push 0x1000
push 0
call sub.KERNEL32.dll_HeapCreate
mov dword [0x530518], eax
call fcn.00420a50
call fcn.004206f2
call fcn.0041fe44
call fcn.0041e130
call fcn.0041e036
call fcn.0041de80
call fcn.0041d91e
call fcn.00403370
call fcn.0040324a
call fcn.00403064
call fcn.0041df66
call fcn.0041f016
mov edx, dword [0x530fb4]
push edx
push edx
call fcn.0041fb60
mov edx, 0x52c21e
push edx
call fcn.00420ad0
mov edx, dword [0x530fb4]
push edx
push edx
push 0x186a0
push 0x30d40
call fcn.0041d420
cdq
push edx
push eax
call fcn.00402790
pop eax
push 0x530544
call fcn.00420b30
mov edx, str.Mozilla_5.0__Windows_NT_10.0__Win64__x64__AppleWebKit_537.36__KHTML__like_Gecko__Chrome_86.0.4240.198_Safari_537.36_Edg_86.0.622.69
lea ecx, [0x530548]
call fcn.00402008
push dword [0x530548]
push 0
push dword [0x530544]
mov eax, str.https:__translate.google.com
push eax
call fcn.0041d638
push dword [0x530544]
call fcn.0041fbc3
push edx
push eax
pop ebx
pop edi
cmp edi, 0
jg 0x401108
jl 0x401104
cmp ebx, 0
ja 0x401108
xor eax, eax
jmp 0x40110d
mov eax, 1
or eax, eax
je 0x40128d
push dword [0x530544]
push 0
call fcn.0041e410
and eax, eax
je 0x40128d
push 0
call fcn.0041e4d0
and eax, eax
je 0x40113f
xor eax, eax
jmp 0x401144
mov eax, 1
and eax, eax
je 0x401184
mov edx, dword [0x530534]
push dword [0x530fb4]
push edx
call fcn.00420ad0
mov edx, dword [0x530fb4]
push edx
push edx
push 0
call fcn.0041e660
pop eax
mov edx, 0x52c028
push edx
call fcn.00420ad0
push 0x530534
call fcn.00420b30
jmp 0x40112d
push 0
call fcn.0041e060
mov eax, str.code:af_name:Afrikaans
push eax
push dword [0x530534]
call fcn.004029b0
mov dword [0x530538], eax
push dword [0x530538]
mov eax, str.code:zu_name:Zulu
push eax
push dword [0x530534]
call fcn.004028f0
mov dword [0x530560], eax
cmp dword [0x530538], 0
je 0x4011d9
cmp dword [0x530560], 0
je 0x4011d9
mov eax, 1
jmp 0x4011db
xor eax, eax
and eax, eax
je 0x40128d
mov edx, dword [0x530fb4]
push edx
push edx
mov ebx, dword [0x530560]
sub ebx, dword [0x530538]
add ebx, 0x15
push ebx
mov ebx, dword [0x530538]
inc ebx
push ebx
push dword [0x530534]
call fcn.004029d0
push 0x53054c
call fcn.00420b30
mov edx, dword [0x530fb4]
push edx
push edx
mov eax, 0x52c028
push eax
mov eax, 0x52c6aa
push eax
push dword [0x53054c]
call fcn.00402da0
push 0x53054c
call fcn.00420b30
mov edx, dword [0x530fb4]
push edx
push edx
xor eax, eax
push eax
mov eax, str.code:
push eax
push dword [0x53054c]
call fcn.00402da0
push 0x53054c
call fcn.00420b30
mov edx, dword [0x530fb4]
push edx
push edx
xor eax, eax
push eax
mov eax, str.name:
push eax
push dword [0x53054c]
call fcn.00402da0
push 0x53054c
call fcn.00420b30
push dword [0x53054c]
call fcn.00402dc0
and eax, eax
je 0x4012a0
xor eax, eax
jmp 0x4012a5
mov eax, 1
and eax, eax
je 0x4013d2
mov eax, str.__hi___Hindi__
push eax
push dword [0x530534]
call fcn.004029b0
mov dword [0x530538], eax
push dword [0x530538]
mov eax, str.__pl___Polish__
push eax
push dword [0x530534]
call fcn.004028f0
mov dword [0x530560], eax
cmp dword [0x530538], 0
je 0x4012f8
cmp dword [0x530560], 0
je 0x4012f8
mov eax, 1
jmp 0x4012fa
xor eax, eax
and eax, eax
je 0x4013d2
mov edx, dword [0x530fb4]
push edx
push edx
mov ebx, dword [0x530560]
sub ebx, dword [0x530538]
add ebx, 0xd
push ebx
mov ebx, dword [0x530538]
inc ebx
push ebx
push dword [0x530534]
call fcn.004029d0
push 0x53054c
call fcn.00420b30
mov edx, dword [0x530fb4]
push edx
push edx
xor eax, eax
push eax
mov eax, 0x52d62e
push eax
push dword [0x53054c]
call fcn.00402da0
push 0x53054c
call fcn.00420b30
mov edx, dword [0x530fb4]
push edx
push edx
mov eax, 0x52c1b6
push eax
mov eax, 0x52c1b2
push eax
push dword [0x53054c]
call fcn.00402da0
push 0x53054c
call fcn.00420b30
mov edx, dword [0x530fb4]
push edx
push edx
xor eax, eax
push eax
mov eax, 0x52c21a
push eax
push dword [0x53054c]
call fcn.00402da0
push 0x53054c
call fcn.00420b30
mov edx, dword [0x530fb4]
push edx
push edx
xor eax, eax
push eax
mov eax, str.auto_Detect_language_n
push eax
push dword [0x53054c]
call fcn.00402da0
push 0x53054c
call fcn.00420b30
push dword [0x53054c]
call fcn.00402dc0
and eax, eax
je 0x401451
mov edx, dword [0x530fb4]
push edx
push edx
call fcn.0041fb60
mov edx, 0x52c21e
push edx
call fcn.00420ad0
mov edx, dword [0x530fb4]
push edx
push edx
push 0x493e0
push 0x61a80
call fcn.0041d420
cdq
push edx
push eax
call fcn.00402790
pop eax
push 0x530540
call fcn.00420b30
push dword [0x530540]
push 0
call fcn.0041e340
and eax, eax
je 0x401451
push dword [0x53054c]
push 0
call fcn.0041e790
push 0
call fcn.0041e060
push dword [0x530540]
push 0
call fcn.0041e410
and eax, eax
je 0x401cbd
mov eax, str.translate.db
push eax
push 1
call fcn.0041e340
and eax, eax
je 0x401489
push 1
call fcn.0041e060
jmp 0x4014a4
push 0x30
mov eax, str.Database_might_be_in_use__operation_cancelled.
push eax
mov eax, str.Google_Translate_Service
push eax
call fcn.0040309d
jmp 0x401ce9
push 2
xor eax, eax
push eax
xor eax, eax
push eax
mov eax, str.translate.db
push eax
push 0
call fcn.0041fe6b
and eax, eax
je 0x401c9b
mov eax, str.CREATE_TABLE_language__code_TEXT_NOT_NULL__name_TEXT_NOT_NULL__
push eax
push 0
call fcn.0041fecf
mov edx, str.BEGIN_TRANSACTION__n
lea ecx, [0x530528]
call fcn.00402008
push 0
call fcn.0041e4d0
and eax, eax
je 0x4014f9
xor eax, eax
jmp 0x4014fe
mov eax, 1
and eax, eax
je 0x401549
mov edx, dword [0x530528]
push dword [0x530fb4]
push edx
call fcn.00420ad0
mov edx, str.INSERT_INTO_language__code__name__VALUES__
push edx
call fcn.00420ad0
mov edx, dword [0x530fb4]
push edx
push edx
push 0
call fcn.0041e660
pop eax
mov edx, 0x52cad8
push edx
call fcn.00420ad0
push 0x530528
call fcn.00420b30
jmp 0x4014e7
mov edx, dword [0x530528]
push dword [0x530fb4]
push edx
call fcn.00420ad0
mov edx, str.COMMIT_
push edx
call fcn.00420ad0
push 0x530528
call fcn.00420b30
push dword [0x530528]
push 0
call fcn.0041fecf
mov edx, str.CREATE_TABLE_help__helpx_INTEGER_NOT_NULL__helpy_INTEGER_NOT_NULL__minifyx_INTEGER_NOT_NULL__minifyy_INTEGER_NOT_NULL__laststate_INTEGER_NOT_NULL__helplanguage_TEXT_NOT_NULL__fontname_TEXT_NOT_NULL__fontsize_INTEGER_NOT_NULL__helptext_TEXT_NOT_NULL__hotspots_INTEGER_NOT_NULL__linenumbers_INTEGER_NOT_NULL__linewrap_INTEGER_NOT_NULL__
lea ecx, [0x530528]
call fcn.00402008
push dword [0x530528]
push 0
call fcn.0041fecf
mov edx, str.Google_Translate_Service_::_Ctrl_Keys_n_n_nCtrl__F1_::_Open
lea ecx, [0x53055c]
call fcn.00402008
mov edx, dword [0x530fb4]
push edx
push edx
mov edx, str.INSERT_INTO_help__helpx__helpy__minifyx__minifyy__laststate__helplanguage__fontname__fontsize__helptext__hotspots__linenumbers__linewrap__VALUES___1___1___1___1__0__en__Tahoma__10__
push edx
call fcn.00420ad0
mov edx, dword [0x53055c]
push edx
call fcn.00420ad0
mov edx, str.__1__1__1__
push edx
call fcn.00420ad0
add dword [0x530fb4], 2
push 0
mov edx, dword [0x52d804]
add dword [esp + 4], edx
call fcn.0041fecf
pop dword [0x530fb4]
mov edx, str.CREATE_TABLE_options__startup_INTEGER_NOT_NULL__ctrlkeys_INTEGER_NOT_NULL__systray_INTEGER_NOT_NULL__taskbar_INTEGER_NOT_NULL__animation_INTEGER_NOT_NULL___transparency_INTEGER_NOT_NULL__sourcelanguage_TEXT_NOT_NULL__targetlanguage_TEXT_NOT_NULL__translateurl_TEXT_NOT_NULL__timeout_INTEGER_NOT_NULL__firstrun_INTEGER_NOT_NULL__
lea ecx, [0x530528]
call fcn.00402008
push dword [0x530528]
push 0
call fcn.0041fecf
mov edx, str.INSERT_INTO_options__startup__ctrlkeys__systray__taskbar__animation__transparency__sourcelanguage__targetlanguage__translateurl__timeout__firstrun__VALUES__1__0__1__1__1__100__auto__en__google.com__0__1__
lea ecx, [0x530528]
call fcn.00402008
push dword [0x530528]
push 0
call fcn.0041fecf
mov eax, str.CREATE_TABLE_entitylist__entityname_TEXT_NOT_NULL__entitynumber_TEXT_NOT_NULL__
push eax
push 0
call fcn.0041fecf
mov edx, str.HTML_Entity_List.bak
lea ecx, [0x530530]
call fcn.00402008
push 0x530564
push 0x52d7fc
push 8
push 1
push 4
call fcn.0042071b
push 0x53056c
push 0x52d7fc
push 8
push 1
push 4
call fcn.0042071b
push dword [0x530530]
call fcn.0041fbc3
push edx
push eax
pop ebx
pop edi
cmp edi, 0
jg 0x4016b6
jl 0x4016b2
cmp ebx, 0
ja 0x4016b6
xor eax, eax
jmp 0x4016bb
mov eax, 1
or eax, eax
je 0x4018bb
push dword [0x530530]
push 1
call fcn.0041e410
and eax, eax
je 0x4018bb
mov eax, str.__A_Za_z0_9_2_7__
push eax
push 0
call fcn.004034c0
and eax, eax
je 0x40171e
mov eax, str.__0_9_2_4__
push eax
push 1
call fcn.004034c0
and eax, eax
je 0x40171e
mov eax, str._0_9_
push eax
push 2
call fcn.004034c0
and eax, eax
je 0x40171e
mov eax, 1
jmp 0x401720
xor eax, eax
and eax, eax
je 0x4018b1
mov edx, str.BEGIN_TRANSACTION__n
lea ecx, [0x530528]
call fcn.00402008
push 1
call fcn.0041e4d0
and eax, eax
je 0x40174a
xor eax, eax
jmp 0x40174f
mov eax, 1
and eax, eax
je 0x40185c
mov edx, dword [0x530fb4]
push edx
push edx
push 1
call fcn.0041e660
push 0x530534
call fcn.00420b30
push dword [0x530564]
push dword [0x530534]
push 0
call fcn.004034e0
and eax, eax
je 0x4017ac
mov ebp, dword [0x530564]
mov edx, dword [ebp]
push dword [0x530fb4]
push edx
call fcn.00420ad0
push 0x530524
call fcn.00420b30
push dword [0x530564]
push dword [0x530534]
push 1
call fcn.004034e0
and eax, eax
je 0x401802
push dword [0x53056c]
mov ebp, dword [0x530564]
push dword [ebp]
push 2
call fcn.004034e0
and eax, eax
je 0x401802
mov ebp, dword [0x53056c]
mov edx, dword [ebp]
push dword [0x530fb4]
push edx
call fcn.00420ad0
push 0x530520
call fcn.00420b30
mov edx, dword [0x530528]
push dword [0x530fb4]
push edx
call fcn.00420ad0
mov edx, str.INSERT_INTO_entitylist__entityname__entitynumber__VALUES__
push edx
call fcn.00420ad0
mov edx, dword [0x530524]
push edx
call fcn.00420ad0
mov edx, 0x52d634
push edx
call fcn.00420ad0
mov edx, dword [0x530520]
push edx
call fcn.00420ad0
mov edx, str.___n
push edx
call fcn.00420ad0
push 0x530528
call fcn.00420b30
jmp 0x401738
mov edx, dword [0x530528]
push dword [0x530fb4]
push edx
call fcn.00420ad0
mov edx, str.COMMIT_
push edx
call fcn.00420ad0
push 0x530528
call fcn.00420b30
push dword [0x530528]
push 0
call fcn.0041fecf
push 2
call fcn.004032e0
push 1
call fcn.004032e0
push 0
call fcn.004032e0
push 1
call fcn.0041e060
mov eax, str.CREATE_TABLE_filterlist__filter_TEXT_NOT_NULL__description_TEXT_NOT_NULL__
push eax
push 0
call fcn.0041fecf
mov edx, str.RegEx_Filter_List.bak
lea ecx, [0x530558]
call fcn.00402008
push dword [0x530558]
call fcn.0041fbc3
push edx
push eax
pop ebx
pop edi
cmp edi, 0
jg 0x4018fa
jl 0x4018f6
cmp ebx, 0
ja 0x4018fa
xor eax, eax
jmp 0x4018ff
mov eax, 1
or eax, eax
je 0x401a77
push dword [0x530558]
push 1
call fcn.0041e410
and eax, eax
je 0x401a77
mov edx, str.BEGIN_TRANSACTION__n
lea ecx, [0x530528]
call fcn.00402008
push 1
call fcn.0041e4d0
and eax, eax
je 0x401941
xor eax, eax
jmp 0x401946
mov eax, 1
and eax, eax
je 0x401a36
mov edx, dword [0x530fb4]
push edx
push edx
mov eax, str.SQUOTE_
push eax
mov eax, 0x52c1b6
push eax
mov edx, dword [0x530fb4]
push edx
push edx
push 1
call fcn.0041e660
mov edx, dword [0x52d804]
add dword [esp], edx
call fcn.00402da0
push 0x530534
call fcn.00420b30
mov edx, dword [0x530fb4]
push edx
push edx
mov eax, str.GTS_
push eax
push 1
push dword [0x530534]
call fcn.00402df0
push 0x530550
call fcn.00420b30
mov edx, dword [0x530fb4]
push edx
push edx
mov eax, str.GTS_
push eax
push 2
push dword [0x530534]
call fcn.00402df0
push 0x530554
call fcn.00420b30
mov edx, dword [0x530528]
push dword [0x530fb4]
push edx
call fcn.00420ad0
mov edx, str.INSERT_INTO_filterlist__filter__description__VALUES__
push edx
call fcn.00420ad0
mov edx, dword [0x530550]
push edx
call fcn.00420ad0
mov edx, 0x52d634
push edx
call fcn.00420ad0
mov edx, dword [0x530554]
push edx
call fcn.00420ad0
mov edx, str.___n
push edx
call fcn.00420ad0
push 0x530528
call fcn.00420b30
jmp 0x40192f
mov edx, dword [0x530528]
push dword [0x530fb4]
push edx
call fcn.00420ad0
mov edx, str.COMMIT_
push edx
call fcn.00420ad0
push 0x530528
call fcn.00420b30
push dword [0x530528]
push 0
call fcn.0041fecf
push 1
call fcn.0041e060
mov eax, str.CREATE_TABLE_urllist__url_TEXT_NOT_NULL__
push eax
push 0
call fcn.0041fecf
mov edx, str.Translate_URL_List.bak
lea ecx, [0x53053c]
call fcn.00402008
push dword [0x53053c]
call fcn.0041fbc3
push edx
push eax
pop ebx
pop edi
cmp edi, 0
jg 0x401ab6
jl 0x401ab2
cmp ebx, 0
ja 0x401ab6
xor eax, eax
jmp 0x401abb
mov eax, 1
or eax, eax
je 0x401b8e
push dword [0x53053c]
push 1
call fcn.0041e410
and eax, eax
je 0x401b8e
mov edx, str.BEGIN_TRANSACTION__n
lea ecx, [0x530528]
call fcn.00402008
push 1
call fcn.0041e4d0
and eax, eax
je 0x401afd
xor eax, eax
jmp 0x401b02
mov eax, 1
and eax, eax
je 0x401b4d
mov edx, dword [0x530528]
push dword [0x530fb4]
push edx
call fcn.00420ad0
mov edx, str.INSERT_INTO_urllist__url__VALUES__
push edx
call fcn.00420ad0
mov edx, dword [0x530fb4]
push edx
push edx
push 1
call fcn.0041e660
pop eax
mov edx, str.___n
push edx
call fcn.00420ad0
push 0x530528
call fcn.00420b30
jmp 0x401aeb
mov edx, dword [0x530528]
push dword [0x530fb4]
push edx
call fcn.00420ad0
mov edx, str.COMMIT_
push edx
call fcn.00420ad0
push 0x530528
call fcn.00420b30
push dword [0x530528]
push 0
call fcn.0041fecf
push 1
call fcn.0041e060
mov eax, str.CREATE_TABLE_translateurl__orderid_INTEGER_NOT_NULL__url_TEXT_NOT_NULL__
push eax
push 0
call fcn.0041fecf
mov edx, str.BEGIN_TRANSACTION__n
lea ecx, [0x530528]
call fcn.00402008
mov edx, dword [0x530528]
push dword [0x530fb4]
push edx
call fcn.00420ad0
mov edx, str.INSERT_INTO_translateurl__orderid__url__VALUES__1__google.com___n
push edx
call fcn.00420ad0
push 0x530528
call fcn.00420b30
mov edx, dword [0x530528]
push dword [0x530fb4]
push edx
call fcn.00420ad0
mov edx, str.INSERT_INTO_translateurl__orderid__url__VALUES__2__google.co.uk___n
push edx
call fcn.00420ad0
push 0x530528
call fcn.00420b30
mov edx, dword [0x530528]
push dword [0x530fb4]
push edx
call fcn.00420ad0
mov edx, str.INSERT_INTO_translateurl__orderid__url__VALUES__3__google.com.au___n
push edx
call fcn.00420ad0
push 0x530528
call fcn.00420b30
mov edx, dword [0x530528]
push dword [0x530fb4]
push edx
call fcn.00420ad0
mov edx, str.INSERT_INTO_translateurl__orderid__url__VALUES__4__google.co.in___n
push edx
call fcn.00420ad0
push 0x530528
call fcn.00420b30
mov edx, dword [0x530528]
push dword [0x530fb4]
push edx
call fcn.00420ad0
mov edx, str.COMMIT_
push edx
call fcn.00420ad0
push 0x530528
call fcn.00420b30
push dword [0x530528]
push 0
call fcn.0041fecf
mov eax, 0x52c02c
push eax
push 0
call fcn.0041fecf
push 0
call fcn.0041fd80
push 0
call fcn.0041e060
push 0x40
mov eax, str.Database_update_completed.
push eax
mov eax, str.Google_Translate_Service
push eax
call fcn.0040309d
jmp 0x401cd3
push 0x30
mov eax, str.Communication_error__try_again.
push eax
mov eax, str.Google_Translate_Service
push eax
call fcn.0040309d
push dword [0x530544]
call fcn.0041fd48
push dword [0x530540]
call fcn.0041fd48
push 0
call 0x401d08
call fcn.00420aa0
push dword [0x530518]
call sub.KERNEL32.dll_HeapDestroy
call sub.KERNEL32.dll_ExitProcess
call fcn.00403239
call fcn.00403360
call fcn.0041df36
call fcn.0041e120
call fcn.0041f94c
call fcn.0041fd56
call fcn.0041fe38
call fcn.0041ff6e
call fcn.0041de70
ret