Function at 0x46f8f7
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push ebx
sub esp, 0x74
mov dword [ebp - 8], 0
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x30], 0
call fcn.0041fc64
mov dword [ebp - 0x3c], eax
cmp dword [ebp + 0x24], 0
jne 0x46f946
sub esp, 4
push 0x3bf
push str._home_wk_src_gpg4win_build_gpg4win_1.1.3_src_playground_build_gnupg_1.4.7_g10_keyserver.c
push str.keyserver
call sub.msvcrt.dll__assert
or dword [0x4fe0e8], 1
sub esp, 0xc
mov eax, dword [ebp + 0x24]
push dword [eax + 4]
call fcn.0046f88e
add esp, 0x10
mov dword [ebp - 0x38], eax
sub esp, 0xc
push dword [ebp - 0x3c]
call sub.msvcrt.dll_strlen
add esp, 4
mov ebx, eax
push dword [ebp - 0x38]
call sub.msvcrt.dll_strlen
add esp, 4
lea eax, [ebx + eax]
add eax, 0x19
push eax
call fcn.004a2e27
add esp, 0x10
mov dword [ebp - 0x24], eax
sub esp, 8
push dword [ebp - 0x3c]
push dword [ebp - 0x24]
call sub.msvcrt.dll_strcpy
add esp, 0x10
sub esp, 8
push 0x4ed0de
push dword [ebp - 0x24]
call sub.msvcrt.dll_strcat
add esp, 0x10
sub esp, 0xc
push dword [ebp - 0x24]
call sub.msvcrt.dll_strlen
add esp, 0x10
add eax, dword [ebp - 0x24]
mov dword [ebp - 0x28], eax
sub esp, 8
push str.gpgkeys_
push dword [ebp - 0x24]
call sub.msvcrt.dll_strcat
add esp, 0x10
sub esp, 8
push dword [ebp - 0x38]
push dword [ebp - 0x24]
call sub.msvcrt.dll_strcat
add esp, 0x10
sub esp, 8
mov eax, dword [ebp + 0x24]
mov al, byte [eax + 0x20]
and eax, 0xff
and eax, 1
push eax
push dword [ebp - 0x38]
call fcn.0046f8bf
add esp, 0x10
test eax, eax
je 0x46fa1e
sub esp, 8
push str._uri
push dword [ebp - 0x24]
call sub.msvcrt.dll_strcat
add esp, 0x10
sub esp, 8
push str..exe
push dword [ebp - 0x24]
call sub.msvcrt.dll_strcat
add esp, 0x10
sub esp, 8
push 1
push dword [ebp - 0x24]
call fcn.0041fd1e
add esp, 0x10
test eax, eax
je 0x46fa58
sub esp, 8
push str.gpgkeys_curl.exe
push dword [ebp - 0x28]
call sub.msvcrt.dll_strcpy
add esp, 0x10
mov eax, dword [0x4fe0e8]
and eax, 1
test eax, eax
je 0x46fb01
mov eax, dword [0x4fe0e8]
and eax, 2
test eax, eax
je 0x46faac
sub esp, 8
sub esp, 4
push dword [ebp - 0x24]
call sub.msvcrt.dll_strlen
add esp, 8
add eax, 0xe
push eax
push dword [ebp - 0x24]
call fcn.004a2f05
add esp, 0x10
mov dword [ebp - 0x24], eax
sub esp, 8
push str.__o___O____I_
push dword [ebp - 0x24]
call sub.msvcrt.dll_strcat
add esp, 0x10
jmp 0x46fae2
sub esp, 8
sub esp, 4
push dword [ebp - 0x24]
call sub.msvcrt.dll_strlen
add esp, 8
add eax, 0xe
push eax
push dword [ebp - 0x24]
call fcn.004a2f05
add esp, 0x10
mov dword [ebp - 0x24], eax
sub esp, 8
push str.__o___o____i_
push dword [ebp - 0x24]
call sub.msvcrt.dll_strcat
add esp, 0x10
sub esp, 8
push 0
push 0
push 0
push dword [ebp - 0x24]
push 0
lea eax, [ebp - 0x34]
push eax
call fcn.00472a52
add esp, 0x20
mov dword [ebp - 8], eax
jmp 0x46fb1e
sub esp, 8
push 0
push 0
push 0
push 0
push dword [ebp - 0x24]
lea eax, [ebp - 0x34]
push eax
call fcn.00472a52
add esp, 0x20
mov dword [ebp - 8], eax
sub esp, 0xc
push dword [ebp - 0x24]
call fcn.004a2f78
add esp, 0x10
cmp dword [ebp - 8], 0
je 0x46fb3d
mov eax, dword [ebp - 8]
mov dword [ebp - 0x5c], eax
jmp 0x470a07
sub esp, 4
push str.1.4.7
push str._This_is_a_GnuPG__s_keyserver_communications_file_n
mov eax, dword [ebp - 0x34]
push dword [eax + 0xc]
call sub.msvcrt.dll_fprintf
add esp, 0x10
sub esp, 4
push 1
push str.VERSION__d_n
mov eax, dword [ebp - 0x34]
push dword [eax + 0xc]
call sub.msvcrt.dll_fprintf
add esp, 0x10
sub esp, 4
push str.1.4.7
push str.PROGRAM__s_n
mov eax, dword [ebp - 0x34]
push dword [eax + 0xc]
call sub.msvcrt.dll_fprintf
add esp, 0x10
sub esp, 4
mov eax, dword [ebp + 0x24]
push dword [eax + 4]
push str.SCHEME__s_n
mov eax, dword [ebp - 0x34]
push dword [eax + 0xc]
call sub.msvcrt.dll_fprintf
add esp, 0x10
mov eax, dword [ebp + 0x24]
cmp dword [eax + 0x18], 0
je 0x46fbd1
sub esp, 4
mov eax, dword [ebp + 0x24]
push dword [eax + 0x18]
push str.OPAQUE__s_n
mov eax, dword [ebp - 0x34]
push dword [eax + 0xc]
call sub.msvcrt.dll_fprintf
add esp, 0x10
jmp 0x46fc65
mov eax, dword [ebp + 0x24]
cmp dword [eax + 8], 0
je 0x46fbf6
sub esp, 4
mov eax, dword [ebp + 0x24]
push dword [eax + 8]
push str.AUTH__s_n
mov eax, dword [ebp - 0x34]
push dword [eax + 0xc]
call sub.msvcrt.dll_fprintf
add esp, 0x10
mov eax, dword [ebp + 0x24]
cmp dword [eax + 0xc], 0
je 0x46fc1b
sub esp, 4
mov eax, dword [ebp + 0x24]
push dword [eax + 0xc]
push str.HOST__s_n
mov eax, dword [ebp - 0x34]
push dword [eax + 0xc]
call sub.msvcrt.dll_fprintf
add esp, 0x10
mov eax, dword [ebp + 0x24]
cmp dword [eax + 0x10], 0
je 0x46fc40
sub esp, 4
mov eax, dword [ebp + 0x24]
push dword [eax + 0x10]
push str.PORT__s_n
mov eax, dword [ebp - 0x34]
push dword [eax + 0xc]
call sub.msvcrt.dll_fprintf
add esp, 0x10
mov eax, dword [ebp + 0x24]
cmp dword [eax + 0x14], 0
je 0x46fc65
sub esp, 4
mov eax, dword [ebp + 0x24]
push dword [eax + 0x14]
push str.PATH__s_n
mov eax, dword [ebp - 0x34]
push dword [eax + 0xc]
call sub.msvcrt.dll_fprintf
add esp, 0x10
mov eax, dword [0x4fe0f4]
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0
je 0x46fc9a
sub esp, 4
mov eax, dword [ebp - 0x18]
add eax, 8
push eax
push str.OPTION__s_n
mov eax, dword [ebp - 0x34]
push dword [eax + 0xc]
call sub.msvcrt.dll_fprintf
add esp, 0x10
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
jmp 0x46fc6d
mov eax, dword [ebp + 0x24]
mov eax, dword [eax + 0x1c]
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0
je 0x46fcd0
sub esp, 4
mov eax, dword [ebp - 0x18]
add eax, 8
push eax
push str.OPTION__s_n
mov eax, dword [ebp - 0x34]
push dword [eax + 0xc]
call sub.msvcrt.dll_fprintf
add esp, 0x10
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
jmp 0x46fca3
mov eax, dword [ebp + 8]
mov dword [ebp - 0x68], eax
cmp dword [ebp - 0x68], 2
je 0x47002d
cmp dword [ebp - 0x68], 2
ja 0x46fcf1
cmp dword [ebp - 0x68], 1
je 0x46fd0a
jmp 0x470747
cmp dword [ebp - 0x68], 3
je 0x4700e2
cmp dword [ebp - 0x68], 4
je 0x4705fd
jmp 0x470747
sub esp, 8
push str.COMMAND_GET_n_n
mov eax, dword [ebp - 0x34]
push dword [eax + 0xc]
call sub.msvcrt.dll_fprintf
add esp, 0x10
mov dword [ebp - 0xc], 0
mov eax, dword [ebp - 0xc]
cmp eax, dword [ebp + 0x14]
jge 0x470012
mov dword [ebp - 0x40], 0
mov edx, dword [ebp - 0xc]
mov eax, edx
shl eax, 3
add eax, edx
lea edx, [eax*4]
mov eax, dword [ebp + 0x10]
cmp dword [edx + eax], 0xa
jne 0x46fdcc
sub esp, 8
push 0x4ecea7
mov eax, dword [ebp - 0x34]
push dword [eax + 0xc]
call sub.msvcrt.dll_fprintf
add esp, 0x10
mov dword [ebp - 0x44], 0
cmp dword [ebp - 0x44], 0x13
jg 0x46fdb1
sub esp, 4
mov edx, dword [ebp - 0xc]
mov eax, edx
shl eax, 3
add eax, edx
shl eax, 2
mov edx, dword [ebp + 0x10]
add eax, dword [ebp - 0x44]
mov al, byte [eax + edx + 0xc]
and eax, 0xff
push eax
push 0x4ecec3
mov eax, dword [ebp - 0x34]
push dword [eax + 0xc]
call sub.msvcrt.dll_fprintf
add esp, 0x10
lea eax, [ebp - 0x44]
inc dword [eax]
jmp 0x46fd71
sub esp, 8
push 0x4ecf02
mov eax, dword [ebp - 0x34]
push dword [eax + 0xc]
call sub.msvcrt.dll_fprintf
add esp, 0x10
jmp 0x46ff79
mov edx, dword [ebp - 0xc]
mov eax, edx
shl eax, 3
add eax, edx
lea edx, [eax*4]
mov eax, dword [ebp + 0x10]
cmp dword [edx + eax], 9
jne 0x46fe5e
sub esp, 8
push 0x4ecea7
mov eax, dword [ebp - 0x34]
push dword [eax + 0xc]
call sub.msvcrt.dll_fprintf
add esp, 0x10
mov dword [ebp - 0x48], 0
cmp dword [ebp - 0x48], 0xf
jg 0x46fe43
sub esp, 4
mov edx, dword [ebp - 0xc]
mov eax, edx
shl eax, 3
add eax, edx
shl eax, 2
mov edx, dword [ebp + 0x10]
add eax, dword [ebp - 0x48]
mov al, byte [eax + edx + 0xc]
and eax, 0xff
push eax
push 0x4ecec3
mov eax, dword [ebp - 0x34]
push dword [eax + 0xc]
call sub.msvcrt.dll_fprintf
add esp, 0x10
lea eax, [ebp - 0x48]
inc dword [eax]
jmp 0x46fe03
sub esp, 8
push 0x4ecf02
mov eax, dword [ebp - 0x34]
push dword [eax + 0xc]
call sub.msvcrt.dll_fprintf
add esp, 0x10
jmp 0x46ff79
mov edx, dword [ebp - 0xc]
mov eax, edx
shl eax, 3
add eax, edx
lea edx, [eax*4]
mov eax, dword [ebp + 0x10]
cmp dword [edx + eax], 8
jne 0x46fec0
mov edx, dword [ebp - 0xc]
mov eax, edx
shl eax, 3
add eax, edx
lea edx, [eax*4]
mov eax, dword [ebp + 0x10]
push dword [edx + eax + 0x10]
mov edx, dword [ebp - 0xc]
mov eax, edx
shl eax, 3
add eax, edx
lea edx, [eax*4]
mov eax, dword [ebp + 0x10]
push dword [edx + eax + 0xc]
push str.0x_08lX_08lX_n
mov eax, dword [ebp - 0x34]
push dword [eax + 0xc]
call sub.msvcrt.dll_fprintf
add esp, 0x10
jmp 0x46ff79
mov edx, dword [ebp - 0xc]
mov eax, edx
shl eax, 3
add eax, edx
lea edx, [eax*4]
mov eax, dword [ebp + 0x10]
cmp dword [edx + eax], 7
jne 0x46ff0a
sub esp, 4
mov edx, dword [ebp - 0xc]
mov eax, edx
shl eax, 3
add eax, edx
lea edx, [eax*4]
mov eax, dword [ebp + 0x10]
push dword [edx + eax + 0x10]
push str.0x_08lX_n
mov eax, dword [ebp - 0x34]
push dword [eax + 0xc]
call sub.msvcrt.dll_fprintf
add esp, 0x10
jmp 0x46ff79
mov edx, dword [ebp - 0xc]
mov eax, edx
shl eax, 3
add eax, edx
lea edx, [eax*4]
mov eax, dword [ebp + 0x10]
cmp dword [edx + eax], 1
jne 0x46ff43
sub esp, 8
push str.0x0000000000000000_n
mov eax, dword [ebp - 0x34]
push dword [eax + 0xc]
call sub.msvcrt.dll_fprintf
add esp, 0x10
mov dword [ebp - 0x40], 1
jmp 0x46ff79
mov edx, dword [ebp - 0xc]
mov eax, edx
shl eax, 3
add eax, edx
lea edx, [eax*4]
mov eax, dword [ebp + 0x10]
cmp dword [edx + eax], 0
jne 0x46ff62
jmp 0x470008
sub esp, 4
push str.keyserver_spawn
push 0x474
push str._home_wk_src_gpg4win_build_gpg4win_1.1.3_src_playground_build_gnupg_1.4.7_g10_keyserver.c
call fcn.0049d962
cmp dword [ebp - 0x40], 0
jne 0x470008
mov eax, dword [ebp + 0x24]
cmp dword [eax + 0xc], 0
je 0x46ffcd
mov eax, dword [ebp + 0x24]
push dword [eax + 0xc]
mov eax, dword [ebp + 0x24]
push dword [eax + 4]
sub esp, 4
mov edx, dword [ebp - 0xc]
mov eax, edx
shl eax, 3
add eax, edx
shl eax, 2
add eax, dword [ebp + 0x10]
push eax
call fcn.0042139c
add esp, 8
push eax
push str.requesting_key__s_from__s_server__s_n
call fcn.004a7e84
add esp, 4
push eax
call fcn.0049d7de
add esp, 0x10
jmp 0x470008
sub esp, 4
mov eax, dword [ebp + 0x24]
push dword [eax]
sub esp, 4
mov edx, dword [ebp - 0xc]
mov eax, edx
shl eax, 3
add eax, edx
shl eax, 2
add eax, dword [ebp + 0x10]
push eax
call fcn.0042139c
add esp, 8
push eax
push str.requesting_key__s_from__s_n
call fcn.004a7e84
add esp, 4
push eax
call fcn.0049d7de
add esp, 0x10
lea eax, [ebp - 0xc]
inc dword [eax]
jmp 0x46fd27
sub esp, 8
push 0x4ecf02
mov eax, dword [ebp - 0x34]
push dword [eax + 0xc]
call sub.msvcrt.dll_fprintf
add esp, 0x10
jmp 0x47075d
sub esp, 8
push str.COMMAND_GETNAME_n_n
mov eax, dword [ebp - 0x34]
push dword [eax + 0xc]
call sub.msvcrt.dll_fprintf
add esp, 0x10
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x48], 0
je 0x470076
sub esp, 4
mov eax, dword [ebp - 0x48]
add eax, 8
push eax
push 0x4ed246
mov eax, dword [ebp - 0x34]
push dword [eax + 0xc]
call sub.msvcrt.dll_fprintf
add esp, 0x10
mov eax, dword [ebp - 0x48]
mov eax, dword [eax]
mov dword [ebp - 0x48], eax
jmp 0x470049
sub esp, 8
push 0x4ecf02
mov eax, dword [ebp - 0x34]
push dword [eax + 0xc]
call sub.msvcrt.dll_fprintf
add esp, 0x10
mov eax, dword [ebp + 0x24]
cmp dword [eax + 0xc], 0
je 0x4700bf
sub esp, 4
mov eax, dword [ebp + 0x24]
push dword [eax + 0xc]
mov eax, dword [ebp + 0x24]
push dword [eax + 4]
push str.searching_for_names_from__s_server__s_n
call fcn.004a7e84
add esp, 4
push eax
call fcn.0049d7de
add esp, 0x10
jmp 0x47075d
sub esp, 8
mov eax, dword [ebp + 0x24]
push dword [eax]
push str.searching_for_names_from__s_n
call fcn.004a7e84
add esp, 4
push eax
call fcn.0049d7de
add esp, 0x10
jmp 0x47075d
sub esp, 8
push str.COMMAND_SEND_n_n_n
mov eax, dword [ebp - 0x34]
push dword [eax + 0xc]
call sub.msvcrt.dll_fprintf
add esp, 0x10
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x48], 0
je 0x47075d
call fcn.004a4dfa
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x18], 0
sub esp, 8
mov eax, dword [ebp - 0x48]
add eax, 8
push eax
lea eax, [ebp - 0x18]
push eax
call fcn.0049ef09
add esp, 0x10
call fcn.0041aea0
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x44]
mov dword [eax + 4], 1
mov eax, dword [ebp - 0x44]
mov byte [eax + 0x38], 0xa
sub esp, 8
push dword [ebp - 0x40]
push dword [ebp - 0x44]
call fcn.0041aefa
add esp, 0x10
sub esp, 0xc
push dword [ebp - 0x44]
call fcn.0041aec6
add esp, 0x10
push dword [0x4fe0f0]
lea eax, [ebp - 0x4c]
push eax
push dword [ebp - 0x18]
push dword [ebp - 0x40]
call fcn.0045d15c
add esp, 0x10
cmp eax, 0xffffffff
jne 0x470195
sub esp, 0xc
push dword [ebp - 0x40]
call fcn.004a4b87
add esp, 0x10
jmp 0x4705e2
sub esp, 0xc
push dword [ebp - 0x40]
call fcn.004a686e
add esp, 0x10
sub esp, 0xc
push dword [ebp - 0x4c]
call fcn.0040eb0c
add esp, 0x10
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax + 4]
mov eax, dword [eax + 4]
push dword [eax + 0x48]
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax + 4]
mov eax, dword [eax + 4]
push dword [eax + 0x44]
push str.INFO__08lX_08lX_BEGIN_n
mov eax, dword [ebp - 0x34]
push dword [eax + 0xc]
call sub.msvcrt.dll_fprintf
add esp, 0x10
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x50], eax
cmp dword [ebp - 0x50], 0
je 0x4704ac
mov eax, dword [ebp - 0x50]
mov eax, dword [eax + 4]
mov eax, dword [eax]
mov dword [ebp - 0x64], eax
cmp dword [ebp - 0x64], 6
je 0x470227
cmp dword [ebp - 0x64], 6
ja 0x470212
cmp dword [ebp - 0x64], 2
je 0x470444
jmp 0x47049f
cmp dword [ebp - 0x64], 0xd
je 0x470302
cmp dword [ebp - 0x64], 0xe
je 0x470227
jmp 0x47049f
mov eax, dword [ebp - 0x50]
mov eax, dword [eax + 4]
mov eax, dword [eax + 4]
mov dword [ebp - 0x54], eax
sub esp, 8
push 0
push dword [ebp - 0x54]
call fcn.004216e3
add esp, 0x10
sub esp, 0xc
mov eax, dword [ebp - 0x54]
push dword [eax + 4]
mov eax, dword [ebp - 0x54]
push dword [eax]
sub esp, 8
push dword [ebp - 0x54]
call fcn.00421b25
add esp, 0xc
push eax
mov eax, dword [ebp - 0x54]
mov al, byte [eax + 0x1f]
and eax, 0xff
push eax
mov eax, dword [ebp - 0x54]
push dword [eax + 0x48]
mov eax, dword [ebp - 0x54]
push dword [eax + 0x44]
mov eax, dword [ebp - 0x50]
mov eax, dword [eax + 4]
cmp dword [eax], 6
jne 0x47028c
mov dword [ebp - 0x60], 0x4ed2b7
jmp 0x470293
mov dword [ebp - 0x60], 0x4ed2ba
push dword [ebp - 0x60]
push str._sb:_08lX_08lX:_u:_u:_u:_u:
mov eax, dword [ebp - 0x34]
push dword [eax + 0xc]
call sub.msvcrt.dll_fprintf
add esp, 0x30
mov eax, dword [ebp - 0x54]
cmp dword [eax + 0x28], 0
je 0x4702c8
sub esp, 8
push 0x4ed2d9
mov eax, dword [ebp - 0x34]
push dword [eax + 0xc]
call sub.msvcrt.dll_fprintf
add esp, 0x10
mov eax, dword [ebp - 0x54]
cmp dword [eax + 0x24], 0
je 0x4702e7
sub esp, 8
push 0x4ed2db
mov eax, dword [ebp - 0x34]
push dword [eax + 0xc]
call sub.msvcrt.dll_fprintf
add esp, 0x10
sub esp, 8
push 0x4ecf02
mov eax, dword [ebp - 0x34]
push dword [eax + 0xc]
call sub.msvcrt.dll_fprintf
add esp, 0x10
jmp 0x47049f
mov eax, dword [ebp - 0x50]
mov eax, dword [eax + 4]
mov eax, dword [eax + 4]
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0x54]
cmp dword [eax + 0x10], 0
je 0x47031c
jmp 0x47049f
sub esp, 8
push str.uid:
mov eax, dword [ebp - 0x34]
push dword [eax + 0xc]
call sub.msvcrt.dll_fprintf
add esp, 0x10
mov dword [ebp - 0x58], 0
mov eax, dword [ebp - 0x54]
mov eax, dword [eax + 4]
cmp eax, dword [ebp - 0x58]
jle 0x4703cf
mov eax, dword [ebp - 0x54]
add eax, dword [ebp - 0x58]
add eax, 0x40
cmp byte [eax + 0xc], 0x3a
je 0x470377
mov eax, dword [ebp - 0x54]
add eax, dword [ebp - 0x58]
add eax, 0x40
cmp byte [eax + 0xc], 0x25
je 0x470377
mov eax, dword [ebp - 0x54]
add eax, dword [ebp - 0x58]
add eax, 0x40
cmp byte [eax + 0xc], 0
js 0x470377
jmp 0x4703a1
sub esp, 4
mov eax, dword [ebp - 0x54]
add eax, dword [ebp - 0x58]
add eax, 0x40
mov al, byte [eax + 0xc]
and eax, 0xff
push eax
push str.___02X
mov eax, dword [ebp - 0x34]
push dword [eax + 0xc]
call sub.msvcrt.dll_fprintf
add esp, 0x10
jmp 0x4703c5
sub esp, 4
mov eax, dword [ebp - 0x54]
add eax, dword [ebp - 0x58]
add eax, 0x40
movsx eax, byte [eax + 0xc]
push eax
push 0x4ed2e9
mov eax, dword [ebp - 0x34]
push dword [eax + 0xc]
call sub.msvcrt.dll_fprintf
add esp, 0x10
lea eax, [ebp - 0x58]
inc dword [eax]
jmp 0x470339
mov eax, dword [ebp - 0x54]
push dword [eax + 0x38]
mov eax, dword [ebp - 0x54]
push dword [eax + 0x40]
push str.:_u:_u:
mov eax, dword [ebp - 0x34]
push dword [eax + 0xc]
call sub.msvcrt.dll_fprintf
add esp, 0x10
mov eax, dword [ebp - 0x54]
cmp dword [eax + 0x30], 0
je 0x47040d
sub esp, 8
push 0x4ed2d9
mov eax, dword [ebp - 0x34]
push dword [eax + 0xc]
call sub.msvcrt.dll_fprintf
add esp, 0x10
mov eax, dword [ebp - 0x54]
cmp dword [eax + 0x34], 0
je 0x47042c
sub esp, 8
push 0x4ed2db
mov eax, dword [ebp - 0x34]
push dword [eax + 0xc]
call sub.msvcrt.dll_fprintf
add esp, 0x10
sub esp, 8
push 0x4ecf02
mov eax, dword [ebp - 0x34]
push dword [eax + 0xc]
call sub.msvcrt.dll_fprintf
add esp, 0x10
jmp 0x47049f
mov eax, dword [ebp - 0x50]
mov eax, dword [eax + 4]
mov eax, dword [eax + 4]
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0x54]
mov al, byte [eax + 0x15]
and eax, 0xff
and eax, 0xfffffffc
cmp eax, 0x10
je 0x470465
jmp 0x47049f
sub esp, 4
mov eax, dword [ebp - 0x54]
push dword [eax + 0x10]
mov eax, dword [ebp - 0x54]
push dword [eax + 0xc]
mov eax, dword [ebp - 0x54]
mov al, byte [eax + 0x15]
and eax, 0xff
push eax
mov eax, dword [ebp - 0x54]
push dword [eax + 8]
mov eax, dword [ebp - 0x54]
push dword [eax + 4]
push str.sig:_08lX_08lX:_X:_u:_u_n
mov eax, dword [ebp - 0x34]
push dword [eax + 0xc]
call sub.msvcrt.dll_fprintf
add esp, 0x20
mov eax, dword [ebp - 0x50]
mov eax, dword [eax]
mov dword [ebp - 0x50], eax
jmp 0x4701e2
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax + 4]
mov eax, dword [eax + 4]
push dword [eax + 0x48]
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax + 4]
mov eax, dword [eax + 4]
push dword [eax + 0x44]
push str.INFO__08lX_08lX_END_n
mov eax, dword [ebp - 0x34]
push dword [eax + 0xc]
call sub.msvcrt.dll_fprintf
add esp, 0x10
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax + 4]
mov eax, dword [eax + 4]
push dword [eax + 0x48]
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax + 4]
mov eax, dword [eax + 4]
push dword [eax + 0x44]
push str.KEY__08lX_08lX_BEGIN_n
mov eax, dword [ebp - 0x34]
push dword [eax + 0xc]
call sub.msvcrt.dll_fprintf
add esp, 0x10
mov eax, dword [ebp - 0x34]
push dword [eax + 0xc]
push 1
mov eax, dword [ebp - 0x40]
push dword [eax + 0x20]
mov eax, dword [ebp - 0x40]
push dword [eax + 0x24]
call sub.msvcrt.dll_fwrite
add esp, 0x10
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax + 4]
mov eax, dword [eax + 4]
push dword [eax + 0x48]
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax + 4]
mov eax, dword [eax + 4]
push dword [eax + 0x44]
push str.KEY__08lX_08lX_END_n
mov eax, dword [ebp - 0x34]
push dword [eax + 0xc]
call sub.msvcrt.dll_fprintf
add esp, 0x10
sub esp, 0xc
push dword [ebp - 0x40]
call fcn.004a4b87
add esp, 0x10
mov eax, dword [ebp + 0x24]
cmp dword [eax + 0xc], 0
je 0x47059d
mov eax, dword [ebp + 0x24]
push dword [eax + 0xc]
mov eax, dword [ebp + 0x24]
push dword [eax + 4]
sub esp, 4
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax + 4]
mov eax, dword [eax + 4]
add eax, 0x44
push eax
call fcn.00421227
add esp, 8
push eax
push str.sending_key__s_to__s_server__s_n
call fcn.004a7e84
add esp, 4
push eax
call fcn.0049d7de
add esp, 0x10
jmp 0x4705d4
sub esp, 4
mov eax, dword [ebp + 0x24]
push dword [eax]
sub esp, 4
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax + 4]
mov eax, dword [eax + 4]
add eax, 0x44
push eax
call fcn.00421227
add esp, 8
push eax
push str.sending_key__s_to__s_n
call fcn.004a7e84
add esp, 4
push eax
call fcn.0049d7de
add esp, 0x10
sub esp, 0xc
push dword [ebp - 0x4c]
call fcn.0041602e
add esp, 0x10
sub esp, 0xc
push dword [ebp - 0x18]
call fcn.0049eedd
add esp, 0x10
mov eax, dword [ebp - 0x48]
mov eax, dword [eax]
mov dword [ebp - 0x48], eax
jmp 0x4700fe
sub esp, 8
push str.COMMAND_SEARCH_n_n
mov eax, dword [ebp - 0x34]
push dword [eax + 0xc]
call sub.msvcrt.dll_fprintf
add esp, 0x10
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x58], eax
cmp dword [ebp - 0x58], 0
je 0x4706de
sub esp, 4
mov eax, dword [ebp - 0x58]
add eax, 8
push eax
push 0x4ed246
mov eax, dword [ebp - 0x34]
push dword [eax + 0xc]
call sub.msvcrt.dll_fprintf
add esp, 0x10
mov eax, dword [ebp - 0x58]
cmp eax, dword [ebp + 0xc]
je 0x470697
sub esp, 8
sub esp, 4
push dword [ebp - 0x2c]
call sub.msvcrt.dll_strlen
add esp, 8
mov ebx, eax
mov eax, dword [ebp - 0x58]
add eax, 8
sub esp, 4
push eax
call sub.msvcrt.dll_strlen
add esp, 8
lea eax, [ebx + eax]
add eax, 2
push eax
push dword [ebp - 0x2c]
call fcn.004a2f05
add esp, 0x10
mov dword [ebp - 0x2c], eax
sub esp, 8
push 0x4ed393
push dword [ebp - 0x2c]
call sub.msvcrt.dll_strcat
add esp, 0x10
jmp 0x4706bc
sub esp, 0xc
mov eax, dword [ebp - 0x58]
add eax, 8
push eax
call sub.msvcrt.dll_strlen
add esp, 4
inc eax
push eax
call fcn.004a2e27
add esp, 0x10
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
mov byte [eax], 0
sub esp, 8
mov eax, dword [ebp - 0x58]
add eax, 8
push eax
push dword [ebp - 0x2c]
call sub.msvcrt.dll_strcat
add esp, 0x10
mov eax, dword [ebp - 0x58]
mov eax, dword [eax]
mov dword [ebp - 0x58], eax
jmp 0x470619
sub esp, 8
push 0x4ecf02
mov eax, dword [ebp - 0x34]
push dword [eax + 0xc]
call sub.msvcrt.dll_fprintf
add esp, 0x10
mov eax, dword [ebp + 0x24]
cmp dword [eax + 0xc], 0
je 0x470724
mov eax, dword [ebp + 0x24]
push dword [eax + 0xc]
mov eax, dword [ebp + 0x24]
push dword [eax + 4]
push dword [ebp - 0x2c]
push str.searching_for___s__from__s_server__s_n
call fcn.004a7e84
add esp, 4
push eax
call fcn.0049d7de
add esp, 0x10
jmp 0x47075d
sub esp, 4
mov eax, dword [ebp + 0x24]
push dword [eax]
push dword [ebp - 0x2c]
push str.searching_for___s__from__s_n
call fcn.004a7e84
add esp, 4
push eax
call fcn.0049d7de
add esp, 0x10
jmp 0x47075d
sub esp, 0xc
push str.no_keyserver_action__n
call fcn.004a7e84
add esp, 4
push eax
call fcn.0049d8b6
sub esp, 0xc
push dword [ebp - 0x34]
call fcn.00472c5f
add esp, 0x10
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x470779
jmp 0x4709d2
mov dword [ebp - 0x1c], 0x400
lea eax, [ebp - 0x1c]
push eax
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x30]
push eax
mov eax, dword [ebp - 0x34]
push dword [eax + 0x10]
call fcn.004a6ed5
add esp, 0x10
test eax, eax
jne 0x4707aa
mov dword [ebp - 8], 0x15
jmp 0x4709d2
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x54], eax
sub esp, 0xc
push dword [ebp - 0x54]
call sub.msvcrt.dll_strlen
add esp, 0x10
mov dword [ebp - 0x58], eax
cmp dword [ebp - 0x58], 0
jle 0x470800
mov eax, dword [ebp - 0x58]
add eax, dword [ebp - 0x54]
dec eax
cmp byte [eax], 0x20
je 0x4707f9
mov eax, dword [ebp - 0x58]
add eax, dword [ebp - 0x54]
dec eax
cmp byte [eax], 0xa
je 0x4707f9
mov eax, dword [ebp - 0x58]
add eax, dword [ebp - 0x54]
dec eax
cmp byte [eax], 0xd
je 0x4707f9
mov eax, dword [ebp - 0x58]
add eax, dword [ebp - 0x54]
dec eax
cmp byte [eax], 9
je 0x4707f9
jmp 0x470800
lea eax, [ebp - 0x58]
dec dword [eax]
jmp 0x4707c1
mov eax, dword [ebp - 0x58]
add eax, dword [ebp - 0x54]
mov byte [eax], 0
mov eax, dword [ebp - 0x54]
cmp byte [eax], 0
jne 0x470816
jmp 0x47090c
sub esp, 4
push 8
push str.VERSION
push dword [ebp - 0x54]
call fcn.004a05b2
add esp, 0x10
test eax, eax
jne 0x470884
mov dword [ebp - 0x10], 1
sub esp, 0xc
mov eax, dword [ebp - 0x54]
add eax, 8
push eax
call sub.msvcrt.dll_atoi
add esp, 0x10
cmp eax, 1
je 0x470779
sub esp, 4
sub esp, 8
mov eax, dword [ebp - 0x54]
add eax, 8
push eax
call sub.msvcrt.dll_atoi
add esp, 0xc
push eax
push 1
push str.invalid_keyserver_protocol__us__d_handler__d__n
call fcn.004a7e84
add esp, 4
push eax
call fcn.0049d87b
add esp, 0x10
jmp 0x4709d2
sub esp, 4
push 8
push str.PROGRAM
push dword [ebp - 0x54]
call fcn.004a05b2
add esp, 0x10
test eax, eax
jne 0x4708e3
sub esp, 4
push 5
push str.1.4.7
mov eax, dword [ebp - 0x54]
add eax, 8
push eax
call fcn.004a05b2
add esp, 0x10
test eax, eax
je 0x470779
sub esp, 8
mov eax, dword [ebp - 0x54]
add eax, 8
push eax
push str.WARNING:_keyserver_handler_from_a_different_version_of_GnuPG___s__n
call fcn.004a7e84
add esp, 4
push eax
call fcn.0049d7de
add esp, 0x10
jmp 0x470779
sub esp, 4
push 0x10
push str.OPTION_OUTOFBAND
push dword [ebp - 0x54]
call fcn.004a05b2
add esp, 0x10
test eax, eax
jne 0x470779
mov dword [ebp - 0x14], 1
jmp 0x470779
cmp dword [ebp - 0x10], 0
jne 0x470930
sub esp, 0xc
push str.keyserver_did_not_send_VERSION_n
call fcn.004a7e84
add esp, 4
push eax
call fcn.0049d87b
add esp, 0x10
jmp 0x4709d2
cmp dword [ebp - 0x14], 0
jne 0x4709d2
mov eax, dword [ebp + 8]
mov dword [ebp - 0x6c], eax
cmp dword [ebp - 0x6c], 3
je 0x4709d2
cmp dword [ebp - 0x6c], 3
ja 0x470958
cmp dword [ebp - 0x6c], 1
jb 0x4709bc
jmp 0x470960
cmp dword [ebp - 0x6c], 4
je 0x4709a6
jmp 0x4709bc
call fcn.004584e1
mov dword [ebp - 0x54], eax
sub esp, 0xc
push dword [0x4fe0ec]
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push dword [ebp - 0x54]
mov eax, dword [ebp - 0x34]
push dword [eax + 0x10]
call fcn.00458718
add esp, 0x20
sub esp, 0xc
push dword [ebp - 0x54]
call fcn.00458913
add esp, 0x10
sub esp, 0xc
push dword [ebp - 0x54]
call fcn.004584f6
add esp, 0x10
jmp 0x4709d2
sub esp, 8
push dword [ebp - 0x2c]
mov eax, dword [ebp - 0x34]
push dword [eax + 0x10]
call fcn.0046f3cc
add esp, 0x10
jmp 0x4709d2
sub esp, 0xc
push str.no_keyserver_action__n
call fcn.004a7e84
add esp, 4
push eax
call fcn.0049d8b6
sub esp, 0xc
push dword [ebp - 0x30]
call fcn.004a2f78
add esp, 0x10
sub esp, 0xc
push dword [ebp - 0x2c]
call fcn.004a2f78
add esp, 0x10
sub esp, 0xc
push dword [ebp - 0x34]
call fcn.00472e3e
add esp, 0x10
mov edx, dword [ebp + 0x18]
mov dword [edx], eax
mov eax, dword [ebp - 8]
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0x5c]
mov ebx, dword [ebp - 4]
leave
ret