Function at 0x10009750
Capabilities:
Get common file path
Parse pe header
Query environment variable

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1160
call fcn.1002ea10
push ebx
push esi
push edi
mov eax, dword [0x1004a178]
mov dword [ebp - 0x75c], eax
mov byte [ebp - 1], 0x44
mov byte [ebp - 2], 0x58
mov byte [ebp - 6], 0x6b
mov ecx, 0x98f1
mov word [ebp - 0xc], cx
mov edx, 0x72
mov word [ebp - 0x18], dx
mov dword [ebp - 0x24], 0xb3f6
mov eax, 0x7df3a
mov dword [ebp - 0x38], 0xe6c1ab62
mov dword [ebp - 0x34], eax
mov ecx, dword [0x1004a0c8]
mov dword [ebp - 0x50], ecx
mov byte [ebp - 5], 0xdc
mov dword [ebp - 0x44], 0x2e3ec074
xor edx, edx
mov dword [ebp - 0x58], 0x2b25
mov dword [ebp - 0x54], edx
mov eax, dword [0x1004a15c]
mov dword [ebp - 0x30], eax
mov byte [ebp - 3], 0x7f
mov ecx, dword [0x1004a130]
mov edx, dword [0x1004a134]
mov dword [ebp - 0x760], edx
mov word [ebp - 0x14], cx
mov eax, dword [0x1004a14c]
mov byte [ebp - 0xd], al
mov ecx, dword [0x1004a148]
mov word [ebp - 0x1c], cx
movsx edx, byte [0x1004a017]
mov dword [ebp - 0x4c], edx
mov eax, 0xb2
mov word [ebp - 0x20], ax
xor ecx, ecx
mov dword [ebp - 0x40], 0xbc
mov dword [ebp - 0x3c], ecx
xor edx, edx
mov dword [ebp - 0x2c], 0xeae74c66
mov dword [ebp - 0x28], edx
mov al, byte [0x1004a144]
mov byte [ebp - 4], al
mov dword [ebp - 0x5c], 0x22
mov ecx, dword [0x1004a178]
xor edx, edx
mov dword [ebp - 0x730], ecx
mov dword [ebp - 0x72c], edx
mov dword [ebp - 0x764], 0xf4ef9d6f
mov byte [ebp - 0x65], 0x40
movzx eax, byte [0x1004a0bb]
cdq
mov dword [ebp - 0x738], eax
mov dword [ebp - 0x734], edx
mov eax, dword [0x1004a0d8]
mov ecx, dword [0x1004a0dc]
mov dword [ebp - 0x6a8], ecx
mov dword [ebp - 0x6ac], eax
mov byte [ebp - 0x66], 0x5f
mov edx, dword [0x1004a188]
mov eax, dword [0x1004a18c]
mov dword [ebp - 0x6b0], eax
mov dword [ebp - 0x6b4], edx
mov ecx, dword [0x1004a140]
mov dword [ebp - 0x728], ecx
mov edx, dword [0x1004a118]
mov dword [ebp - 0x6b8], edx
mov al, byte [0x1004a128]
mov byte [ebp - 0x89], al
mov ecx, dword [0x1004a168]
mov edx, dword [0x1004a16c]
mov dword [ebp - 0x740], ecx
mov dword [ebp - 0x73c], edx
movsx ax, byte [0x1004a03f]
mov word [ebp - 0x330], ax
xor ecx, ecx
mov dword [ebp - 0x748], 0x6efc994c
mov dword [ebp - 0x744], ecx
mov edx, dword [0x1004a130]
mov eax, dword [0x1004a134]
mov dword [ebp - 0x6bc], eax
mov byte [ebp - 0xb1], dl
movzx cx, byte [0x1004a0bc]
mov word [ebp - 0x334], cx
mov edx, dword [0x1004a190]
xor eax, eax
mov dword [ebp - 0x750], edx
mov dword [ebp - 0x74c], eax
push 0
lea ecx, [ebp - 0xb58]
push ecx
push 0x104
push 0x1003b6a0
call dword [sym.imp.KERNEL32.dll_GetFullPathNameA]
xor edx, edx
mov dword [0x1004a0e0], eax
mov dword [0x1004a0e4], edx
mov eax, dword [0x1004ac78]
mov dword [ebp - 0x6c], eax
mov ecx, dword [ebp - 0x6c]
add ecx, 0x398
mov dword [ebp - 0x6c0], ecx
movzx eax, word [ebp - 0x18]
movsx edx, byte [0x1004a017]
sub eax, edx
cdq
or eax, dword [ebp - 0x2c]
mov word [ebp - 0x14], ax
movzx eax, byte [ebp - 1]
cdq
xor eax, 0x70fd568c
mov byte [ebp - 6], al
mov eax, dword [ebp - 0x6c]
add eax, 0x1e9
mov dword [ebp - 0x110], eax
movzx ecx, byte [ebp - 3]
push ecx
push 0xffffffffffffff96
push 0
push 0
push 0
call fcn.100248f0
add esp, 0x14
movsx dx, al
mov word [ebp - 0xc], dx
movzx eax, word [ebp - 0xc]
test eax, eax
jg 0x10009a24
mov byte [ebp - 2], 0
mov eax, dword [0x1004a144]
cdq
push edx
push eax
mov ecx, dword [ebp - 0x3c]
push ecx
mov edx, dword [ebp - 0x40]
push edx
call fcn.1002e960
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], edx
mov al, byte [ebp - 2]
mov byte [ebp - 0x338], al
cmp byte [ebp - 0x338], 0
je 0x100099f0
jmp 0x10009a22
movsx ecx, byte [0x1004a093]
add ecx, 0xe9e6
movzx edx, byte [ebp - 1]
and edx, ecx
mov byte [ebp - 1], dl
mov eax, dword [0x1004a118]
add eax, 1
mov ecx, dword [0x1004a11c]
adc ecx, 0
mov dword [0x1004a118], eax
mov dword [0x1004a11c], ecx
jmp 0x10009a62
movsx edx, byte [0x1004a092]
movsx eax, byte [0x1004a03e]
cmp edx, eax
je 0x10009a4a
xor ecx, ecx
mov dword [0x1004a130], 8
mov dword [0x1004a134], ecx
jmp 0x10009a62
cmp dword [ebp - 0x24], 0
je 0x10009a62
mov edx, dword [0x1004a104]
add edx, 0xe332
mov byte [0x1004a0ba], dl
mov eax, dword [ebp - 0x6c]
add eax, 0xff
mov dword [ebp - 0x10c], eax
movsx ecx, word [ebp - 0x20]
movzx edx, byte [0x1004a056]
cmp ecx, edx
jl 0x10009a8b
mov dword [ebp - 0xd4], 1
jmp 0x10009a95
mov dword [ebp - 0xd4], 0
movsx eax, word [ebp - 0x20]
cmp eax, 0x19
jl 0x10009aaa
mov dword [ebp - 0xd8], 1
jmp 0x10009ab4
mov dword [ebp - 0xd8], 0
mov ecx, dword [ebp - 0xd4]
cmp ecx, dword [ebp - 0xd8]
jne 0x10009aea
mov ecx, 9
mov esi, str.map_set_T__too_lon
lea edi, [ebp - 0x7cc]
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
lea edx, [ebp - 0x7cc]
push edx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov dword [0x1004a14c], eax
jmp 0x10009b4d
mov eax, dword [ebp - 0x58]
or eax, dword [ebp - 0x54]
jne 0x10009afe
mov dword [ebp - 0xdc], 1
jmp 0x10009b08
mov dword [ebp - 0xdc], 0
movsx ecx, byte [ebp - 6]
cmp dword [ebp - 0xdc], ecx
jg 0x10009b4d
mov edx, dword [ebp - 0x28]
push edx
mov eax, dword [ebp - 0x2c]
push eax
mov ecx, dword [0x1004a174]
push ecx
mov edx, dword [0x1004a170]
push edx
call fcn.1002e960
mov ecx, dword [0x1004a0d8]
mov esi, dword [0x1004a0dc]
not ecx
not esi
push esi
push ecx
push edx
push eax
call fcn.1002e960
mov dword [0x1004a15c], eax
mov edx, dword [0x1004ac78]
mov dword [ebp - 0x70], edx
movzx eax, byte [ebp - 1]
movzx ecx, byte [0x1004a06b]
cmp eax, ecx
jge 0x10009b71
mov dword [ebp - 0xe0], 1
jmp 0x10009b7b
mov dword [ebp - 0xe0], 0
movzx edx, byte [0x1004a0ba]
mov eax, dword [ebp - 0xe0]
sub eax, edx
je 0x10009c10
mov ecx, dword [0x1004a104]
not ecx
xor edx, edx
mov dword [ebp - 0x4b0], ecx
mov dword [ebp - 0x4ac], edx
mov eax, dword [ebp - 0x3c]
cmp eax, dword [ebp - 0x4ac]
jb 0x10009bca
ja 0x10009bbe
mov ecx, dword [ebp - 0x40]
cmp ecx, dword [ebp - 0x4b0]
jbe 0x10009bca
mov dword [ebp - 0xe4], 1
jmp 0x10009bd4
mov dword [ebp - 0xe4], 0
mov edx, dword [ebp - 0xe4]
cmp edx, dword [0x1004a158]
jae 0x10009bee
mov dword [ebp - 0xe8], 1
jmp 0x10009bf8
mov dword [ebp - 0xe8], 0
mov eax, dword [ebp - 0xe8]
not eax
test eax, eax
je 0x10009c10
mov dword [ebp - 0xec], 1
jmp 0x10009c1a
mov dword [ebp - 0xec], 0
mov ecx, dword [ebp - 0xec]
not ecx
test ecx, ecx
je 0x10009ce9
movzx edx, byte [ebp - 2]
push edx
movzx eax, byte [ebp - 0x40]
push eax
push 0
movzx ecx, byte [ebp - 0x44]
push ecx
push 0x3a
call fcn.100248f0
add esp, 0x14
movsx edx, al
mov dword [0x1004a128], edx
cmp dword [0x1004a128], 0
jle 0x10009c63
mov dword [ebp - 0xf0], 1
jmp 0x10009c6d
mov dword [ebp - 0xf0], 0
cmp dword [0x1004a128], 3
jle 0x10009c82
mov dword [ebp - 0xf4], 1
jmp 0x10009c8c
mov dword [ebp - 0xf4], 0
mov eax, dword [ebp - 0xf0]
cmp eax, dword [ebp - 0xf4]
jle 0x10009cc5
mov eax, dword [ebp - 0x4c]
cdq
push 0xc258f
push 0x6faa6f3f
push edx
push eax
call fcn.1002e960
mov byte [ebp - 1], al
movzx eax, byte [0x1004a0bb]
cdq
or eax, dword [str.J64_]
mov byte [ebp - 4], al
jmp 0x10009ce7
movzx ecx, byte [ebp - 1]
sub ecx, 0x304b36f3
mov byte [0x1004a0bc], cl
movsx eax, byte [str.address_family_not]
cdq
add eax, 0x727e83d3
mov byte [0x1004a056], al
jmp 0x10009d4c
mov edx, dword [0x1004a0e0]
mov eax, dword [0x1004a0e4]
mov dword [ebp - 0x4b8], edx
mov dword [ebp - 0x4b4], eax
mov ecx, dword [ebp - 0x4b8]
or ecx, dword [ebp - 0x4b4]
je 0x10009d35
mov edx, dword [ebp - 0x24]
xor eax, eax
add edx, dword [ebp - 0x40]
adc eax, dword [ebp - 0x3c]
and edx, dword [ebp - 0x40]
and eax, dword [ebp - 0x3c]
mov dword [ebp - 0x40], edx
mov dword [ebp - 0x3c], eax
movzx ecx, byte [ebp - 0xd]
sub ecx, 0x4d03b820
mov word [ebp - 0x1c], cx
jmp 0x10009d4c
mov edx, 0xe6
test edx, edx
je 0x10009d4c
movzx eax, byte [ebp - 1]
imul eax, dword [0x1004a190]
mov byte [ebp - 1], al
mov ecx, dword [ebp - 0x70]
add ecx, 0x3a5
mov dword [ebp - 0x6c4], ecx
mov edx, dword [0x1004a160]
mov eax, dword [0x1004a164]
mov ecx, dword [0x1004a0f8]
mov esi, dword [0x1004a0fc]
mov dword [ebp - 0x4c0], edx
mov dword [ebp - 0x4bc], eax
mov dword [ebp - 0x4c8], ecx
mov dword [ebp - 0x4c4], esi
mov edx, dword [ebp - 0x4c0]
cmp edx, dword [ebp - 0x4c8]
jne 0x10009db2
mov eax, dword [ebp - 0x4bc]
cmp eax, dword [ebp - 0x4c4]
jne 0x10009db2
mov dword [ebp - 0xf8], 1
jmp 0x10009dbc
mov dword [ebp - 0xf8], 0
mov ecx, dword [0x1004a160]
mov edx, dword [0x1004a164]
mov dword [ebp - 0x4d0], ecx
mov dword [ebp - 0x4cc], edx
cmp dword [ebp - 0x4d0], 0x32
jne 0x10009df2
cmp dword [ebp - 0x4cc], 0
jne 0x10009df2
mov dword [ebp - 0xfc], 1
jmp 0x10009dfc
mov dword [ebp - 0xfc], 0
mov eax, dword [ebp - 0xf8]
cmp eax, dword [ebp - 0xfc]
je 0x10009e5b
mov ecx, dword [str.x_cp20004]
mov dword [ebp - 0x6a4], ecx
mov edx, dword [0x1003b6d4]
mov dword [ebp - 0x6a0], edx
mov eax, dword [0x1003b6d8]
mov dword [ebp - 0x69c], eax
mov ecx, dword [0x1003b6dc]
mov dword [ebp - 0x698], ecx
mov edx, dword [0x1003b6e0]
mov dword [ebp - 0x694], edx
lea eax, [ebp - 0x6a4]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
cdq
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x28], edx
jmp 0x10009eb2
movzx ecx, word [ebp - 0x1c]
test ecx, ecx
je 0x10009e71
mov edx, dword [ebp - 0x4c]
sar edx, 2
mov dword [0x1004a144], edx
jmp 0x10009eb2
movsx eax, byte [ebp - 4]
test eax, eax
je 0x10009e8f
mov ecx, dword [0x1004ac78]
xor edx, edx
mov dword [str.J64_], ecx
mov dword [0x1004a13c], edx
jmp 0x10009eb2
movsx eax, byte [0x1004a03e]
test eax, eax
je 0x10009eb2
movzx ecx, word [ebp - 0xc]
test ecx, ecx
jne 0x10009ea8
mov byte [ebp - 0x5d], 1
jmp 0x10009eac
mov byte [ebp - 0x5d], 0
mov dl, byte [ebp - 0x5d]
mov byte [ebp - 5], dl
mov eax, dword [ebp - 0x70]
add eax, 0x232
mov dword [ebp - 0x344], eax
movsx ecx, word [ebp - 0x20]
sub ecx, 0xac
mov word [ebp - 0x18], cx
mov edx, dword [ebp - 0x70]
add edx, 0x133
mov dword [ebp - 0x148], edx
mov dword [ebp - 0x48], 0
movzx eax, word [ebp - 0x1c]
test eax, eax
je 0x10009ef4
mov cl, byte [ebp - 5]
mov byte [ebp - 0x5e], cl
jmp 0x10009efa
mov dl, byte [ebp - 3]
mov byte [ebp - 0x5e], dl
mov al, byte [ebp - 0x5e]
mov byte [ebp - 2], al
mov ecx, dword [0x1004a148]
cmp dword [0x1004a104], ecx
jb 0x10009fa0
mov byte [ebp - 2], 1
mov edx, dword [ebp - 0x24]
xor eax, eax
add edx, dword [ebp - 0x2c]
adc eax, dword [ebp - 0x28]
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x28], eax
mov cl, byte [ebp - 2]
mov byte [ebp - 0x100], cl
cmp byte [ebp - 0x100], 0
je 0x10009f44
cmp byte [ebp - 0x100], 1
je 0x10009f75
jmp 0x10009fa0
cmp dword [0x1004a15c], 0
je 0x10009f5c
movsx edx, byte [0x1004a017]
mov dword [ebp - 0x104], edx
jmp 0x10009f67
mov eax, dword [0x1004a17c]
mov dword [ebp - 0x104], eax
mov cl, byte [ebp - 0x104]
mov byte [0x1004a093], cl
jmp 0x10009fa0
mov edx, dword [0x1004a0c8]
xor eax, eax
add edx, dword [0x1004a0e8]
adc eax, dword [0x1004a0ec]
add edx, dword [0x1004a0e8]
adc eax, dword [0x1004a0ec]
mov dword [0x1004a0e8], edx
mov dword [0x1004a0ec], eax
xor ecx, ecx
mov dword [ebp - 0x40], 2
mov dword [ebp - 0x3c], ecx
movzx edx, byte [ebp - 1]
mov dword [0x1004a158], edx
movzx eax, byte [0x1004a0ba]
test eax, eax
je 0x10009fd7
movzx eax, byte [0x1004a0bc]
cdq
mov dword [ebp - 0x29c], eax
mov dword [ebp - 0x298], edx
jmp 0x10009fef
mov ecx, dword [0x1004a170]
mov edx, dword [0x1004a174]
mov dword [ebp - 0x29c], ecx
mov dword [ebp - 0x298], edx
mov eax, dword [ebp - 0x29c]
mov ecx, dword [ebp - 0x298]
mov dword [0x1004a118], eax
mov dword [0x1004a11c], ecx
mov ecx, 0x10
mov esi, dword [ebp + 8]
lea edi, [ebp - 0x7a4]
rep movsd dword es:[edi], dword [esi]
xor edx, edx
mov dword [0x1004a0c0], 0xfc
mov dword [0x1004a0c4], edx
movsx eax, word [0x1004a120]
cdq
mov ecx, eax
mov esi, edx
movzx eax, word [ebp - 0x18]
cdq
mov edi, dword [0x1004a0c0]
mov ebx, dword [0x1004a0c4]
add edi, eax
adc ebx, edx
mov dword [ebp - 0x4d8], ecx
mov dword [ebp - 0x4d4], esi
mov dword [ebp - 0x4e0], edi
mov dword [ebp - 0x4dc], ebx
mov edx, dword [ebp - 0x4d8]
cmp edx, dword [ebp - 0x4e0]
jne 0x1000a286
mov eax, dword [ebp - 0x4d4]
cmp eax, dword [ebp - 0x4dc]
jne 0x1000a286
mov dword [ebp - 0x74], 0x218
jmp 0x1000a097
mov ecx, dword [ebp - 0x74]
sub ecx, 1
mov dword [ebp - 0x74], ecx
cmp dword [ebp - 0x74], 0
jle 0x1000a12a
mov edx, dword [ebp - 0x2c]
or edx, dword [ebp - 0x28]
je 0x1000a102
movzx eax, byte [0x1004a056]
add eax, dword [0x1004a128]
jne 0x1000a0cc
xor ecx, ecx
mov dword [ebp - 0x2cc], 1
mov dword [ebp - 0x2c8], ecx
jmp 0x1000a0d7
xorps xmm0, xmm0
movlpd qword [ebp - 0x2cc], xmm0
movzx eax, byte [0x1004a0bb]
cdq
xor eax, dword [ebp - 0x38]
xor edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x2c8]
push ecx
mov ecx, dword [ebp - 0x2cc]
push ecx
push edx
push eax
call fcn.1002e960
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x28], edx
jmp 0x1000a113
movzx edx, byte [0x1004a06b]
sub edx, 0x69b04f44
mov word [ebp - 0x1c], dx
mov eax, dword [ebp - 0x2c]
add eax, 1
mov ecx, dword [ebp - 0x28]
adc ecx, 0
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x28], ecx
jmp 0x1000a08e
mov ecx, dword [0x1004a0c0]
mov esi, dword [0x1004a0c4]
movsx eax, byte [ebp - 2]
add eax, 0x37d07db2
cdq
mov dword [ebp - 0x4e8], ecx
mov dword [ebp - 0x4e4], esi
mov dword [ebp - 0x4f0], eax
mov dword [ebp - 0x4ec], edx
mov edx, dword [ebp - 0x4e8]
cmp edx, dword [ebp - 0x4f0]
jne 0x1000a286
mov eax, dword [ebp - 0x4e4]
cmp eax, dword [ebp - 0x4ec]
jne 0x1000a286
mov byte [ebp - 2], 4
movzx ecx, word [ebp - 0x1c]
imul ecx, dword [0x1004a148]
mov word [ebp - 0x1c], cx
mov edx, 2
imul eax, edx, 0x41b7
movzx ecx, word [eax + 0x1017e288]
movzx edx, byte [0x1004a056]
sub edx, ecx
mov byte [0x1004a056], dl
movsx eax, byte [ebp - 2]
mov dword [ebp - 0x108], eax
cmp dword [ebp - 0x108], 4
ja case.default.0x1000a1cd
mov ecx, dword [ebp - 0x108]
jmp dword [ecx*4 + 0x1000e63c]
movsx edx, byte [0x1004a03f]
test edx, edx
je 0x1000a1f8
mov eax, dword [0x1004a108]
mov ecx, dword [0x1004a10c]
mov dword [ebp - 0x2d4], eax
mov dword [ebp - 0x2d0], ecx
jmp 0x1000a20c
movzx eax, byte [0x1004a0bc]
cdq
mov dword [ebp - 0x2d4], eax
mov dword [ebp - 0x2d0], edx
mov edx, dword [ebp - 0x2d4]
mov dword [ebp - 0x50], edx
jmp case.default.0x1000a1cd
mov byte [ebp - 1], 0x9e
movzx eax, byte [0x1004a0bc]
add eax, 0x93
mov word [ebp - 0xc], ax
jmp case.default.0x1000a1cd
mov ecx, dword [0x1004a0e0]
mov edx, dword [0x1004a0e4]
mov dword [ebp - 0x6c8], edx
add ecx, 0xd64cb752
mov word [0x1004a124], cx
jmp case.default.0x1000a1cd
movzx eax, byte [ebp - 5]
imul eax, eax, 0xad
cdq
mov dword [0x1004a0e0], eax
mov dword [0x1004a0e4], edx
jmp case.default.0x1000a1cd
movsx ecx, byte [0x1004a03e]
imul edx, ecx, 0xd09d7442
mov word [ebp - 0x18], dx
jmp 0x1000a016
mov ecx, 0x1a6
sub ecx, dword [ebp - 0x10c]
xor ecx, dword [ebp - 0x10c]
mov edx, dword [ebp - 0x110]
sub edx, dword [ebp - 0x110]
cmp ecx, edx
je 0x1000e61a
xor eax, eax
mov dword [0x1004a0e8], 0x43e394f8
mov dword [0x1004a0ec], eax
movsx eax, byte [ebp - 6]
add eax, 1
cdq
mov dword [ebp - 0x4f8], eax
mov dword [ebp - 0x4f4], edx
mov ecx, dword [0x1004a0e8]
cmp ecx, dword [ebp - 0x4f8]
jne 0x1000a46c
mov edx, dword [0x1004a0ec]
cmp edx, dword [ebp - 0x4f4]
jne 0x1000a46c
movzx eax, byte [ebp - 0xd]
cdq
mov dword [ebp - 0x500], eax
mov dword [ebp - 0x4fc], edx
mov eax, dword [ebp - 0x4fc]
cmp eax, dword [0x1004a0ec]
jb 0x1000a325
ja 0x1000a323
mov ecx, dword [ebp - 0x500]
cmp ecx, dword [0x1004a0e8]
jbe 0x1000a325
jmp 0x1000a368
movzx edx, word [0x1004a124]
test edx, edx
jne 0x1000a33c
mov dword [ebp - 0x114], 1
jmp 0x1000a346
mov dword [ebp - 0x114], 0
movzx eax, byte [ebp - 0xd]
sub eax, dword [ebp - 0x114]
cdq
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], edx
xor eax, eax
mov dword [0x1004a168], 0xa0
mov dword [0x1004a16c], eax
movzx ecx, byte [0x1004a056]
cmp ecx, 1
jne 0x1000a46c
movsx eax, byte [str.address_family_not]
cdq
push edx
push eax
call fcn.10024090
add esp, 8
mov dword [ebp - 0x50], eax
movsx edx, byte [str.address_family_not]
not edx
movsx eax, word [ebp - 0x14]
cmp edx, eax
jle 0x1000a3aa
mov dword [ebp - 0x118], 1
jmp 0x1000a3b4
mov dword [ebp - 0x118], 0
mov ecx, dword [ebp - 0x118]
not ecx
test ecx, ecx
je 0x1000a43a
movzx edx, word [ebp - 0xc]
not edx
cmp edx, dword [ebp - 0x4c]
jne 0x1000a43a
push 0
push 0x9e
push 0
push 0x7d
push 0
push 0
push 0
push 0x50
push 0
push 0
call fcn.100243a0
add esp, 0x28
mov dword [0x1004a144], eax
cmp dword [0x1004a144], 0
je 0x1000a426
movzx eax, byte [ebp - 5]
test eax, eax
je 0x1000a40e
mov ecx, dword [0x1004a154]
mov dword [ebp - 0x11c], ecx
jmp 0x1000a41b
movsx edx, byte [0x1004a092]
mov dword [ebp - 0x11c], edx
mov eax, dword [ebp - 0x11c]
mov dword [ebp - 0x24], eax
jmp 0x1000a438
mov ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 0x34]
mov dword [ebp - 0x6cc], edx
mov dword [0x1004a17c], ecx
jmp 0x1000a446
movzx eax, byte [ebp - 3]
xor eax, 0x15f2
mov dword [ebp - 0x44], eax
jmp 0x1000a46c
xor eax, eax
mov dword [0x1004a0e8], 0x43e394f8
mov dword [0x1004a0ec], eax
mov ecx, dword [0x1004a104]
add ecx, dword [0x1004a158]
mov edx, dword [0x1004a158]
sub edx, ecx
mov dword [0x1004a158], edx
movzx eax, word [ebp - 0x7a4]
cmp eax, 0x5a4d
jne 0x1000e61a
movzx ecx, byte [ebp - 0x30]
push ecx
movzx edx, byte [ebp - 5]
push edx
movzx eax, byte [ebp - 1]
push eax
movzx ecx, byte [ebp - 6]
push ecx
push 0
call fcn.100248f0
add esp, 0x14
movsx edx, al
mov dword [ebp - 0x30], edx
cmp dword [ebp - 0x30], 0
je 0x1000a5bc
push 0x1003b6e4
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov dword [ebp - 0x4c], eax
cmp dword [ebp - 0x4c], 0
jl 0x1000a5bc
movsx eax, byte [0x1004a093]
test eax, eax
je 0x1000a51e
movsx ecx, word [ebp - 0x14]
movsx edx, byte [0x1004a03f]
sub ecx, edx
mov word [ebp - 0x14], cx
mov eax, dword [0x1004a190]
add eax, 0x64bf
mov word [ebp - 0x1c], ax
jmp 0x1000a5bc
mov ecx, dword [0x1004a130]
mov edx, dword [0x1004a134]
mov dword [ebp - 0x508], ecx
mov dword [ebp - 0x504], edx
mov eax, dword [ebp - 0x508]
or eax, dword [ebp - 0x504]
je 0x1000a569
mov byte [ebp - 5], 0x97
push 0
push 0x723153d8
mov ecx, dword [0x1004a174]
push ecx
mov edx, dword [0x1004a170]
push edx
call fcn.1002e960
mov dword [0x1004a190], eax
jmp 0x1000a5bc
cmp dword [ebp - 0x30], 0
je 0x1000a587
mov eax, 4
imul ecx, eax, 0x77
mov dx, word [ecx + 0x10249798]
mov word [0x1004a124], dx
jmp 0x1000a5bc
movsx eax, byte [0x1004a092]
cdq
mov dword [ebp - 0x510], eax
mov dword [ebp - 0x50c], edx
mov eax, dword [ebp - 0x54]
cmp eax, dword [ebp - 0x50c]
jl 0x1000a5bc
jg 0x1000a5b3
mov ecx, dword [ebp - 0x58]
cmp ecx, dword [ebp - 0x510]
jb 0x1000a5bc
mov dl, byte [ebp - 4]
mov byte [str.address_family_not], dl
xor eax, eax
mov dword [0x1004a180], 0x9f99834c
mov dword [0x1004a184], eax
movzx ecx, word [0x1004a124]
movzx edx, word [ebp - 0xc]
sub edx, 0x6907644a
cmp ecx, edx
jne 0x1000a67f
movsx eax, byte [0x1004a017]
movzx ecx, word [ebp - 0x18]
add eax, ecx
cmp eax, 1
jne 0x1000a67f
mov dword [ebp - 0xb8], 0
jmp 0x1000a617
mov edx, dword [ebp - 0xb8]
add edx, 2
mov dword [ebp - 0xb8], edx
cmp dword [ebp - 0xb8], 0x10f
jge 0x1000a641
mov eax, dword [0x1004a0c0]
mov ecx, dword [0x1004a0c4]
add eax, 1
adc ecx, 0
mov dword [0x1004a0c0], eax
mov dword [0x1004a0c4], ecx
jmp 0x1000a608
jmp 0x1000a5bc
movsx edx, byte [ebp - 6]
cmp edx, dword [ebp - 0x44]
jg 0x1000a6d6
mov eax, dword [0x1004a178]
add eax, 0x4886fdf8
mov byte [0x1004a056], al
cmp dword [ebp - 0x44], 0
je 0x1000a6b7
mov ecx, dword [0x1004a0e0]
mov edx, dword [0x1004a0e4]
mov dword [ebp - 0x2dc], ecx
mov dword [ebp - 0x2d8], edx
jmp 0x1000a6c8
movsx eax, word [ebp - 0x20]
cdq
mov dword [ebp - 0x2dc], eax
mov dword [ebp - 0x2d8], edx
mov al, byte [ebp - 0x2dc]
mov byte [ebp - 3], al
jmp 0x1000a75a
mov ecx, dword [0x1004a0e0]
mov edx, dword [0x1004a0e4]
mov dword [ebp - 0x518], ecx
mov dword [ebp - 0x514], edx
mov eax, dword [ebp - 0x518]
or eax, dword [ebp - 0x514]
je 0x1000a70f
movzx eax, byte [ebp - 1]
cdq
mov dword [ebp - 0xcc], eax
mov dword [ebp - 0xc8], edx
jmp 0x1000a727
mov ecx, dword [0x1004a0f8]
mov edx, dword [0x1004a0fc]
mov dword [ebp - 0xcc], ecx
mov dword [ebp - 0xc8], edx
mov eax, dword [ebp - 0xcc]
mov ecx, dword [ebp - 0xc8]
mov dword [0x1004a0c0], eax
mov dword [0x1004a0c4], ecx
movzx eax, byte [ebp - 5]
cdq
mov ecx, 8
imul ecx, ecx, 0x7bfc
mov dword [ecx + 0x10089040], eax
mov dword [ecx + 0x10089044], edx
mov edx, dword [0x1004ac78]
mov dword [ebp - 0x78], edx
mov eax, dword [0x1004a140]
cmp eax, dword [0x1004a15c]
jne 0x1000a791
mov eax, dword [ebp - 0x4c]
cdq
add eax, 0x3808574a
adc edx, 0x38c84
mov ecx, dword [ebp - 0x2c]
sub ecx, eax
mov eax, dword [ebp - 0x28]
sbb eax, edx
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x28], eax
jmp 0x1000a7a7
cmp dword [ebp - 0x24], 0
je 0x1000a7a7
movzx ecx, word [0x1004a150]
sub ecx, 0xef59
mov byte [ebp - 1], cl
mov edx, dword [ebp - 0x78]
add edx, 0x334
mov dword [ebp - 0x6d0], edx
mov eax, dword [0x1004a0c8]
cmp eax, dword [ebp - 0x4c]
jb 0x1000a7cc
mov dword [ebp - 0x120], 1
jmp 0x1000a7d6
mov dword [ebp - 0x120], 0
cmp dword [0x1004a0c8], 0x4b
jb 0x1000a7eb
mov dword [ebp - 0x124], 1
jmp 0x1000a7f5
mov dword [ebp - 0x124], 0
mov ecx, dword [ebp - 0x120]
cmp ecx, dword [ebp - 0x124]
jge 0x1000a805
jmp 0x1000a856
movzx eax, byte [ebp - 0xd]
cdq
push 0x5b517
push 0xbffb6860
push edx
push eax
call fcn.1002e960
mov byte [ebp - 6], al
mov edx, dword [0x1004a160]
mov eax, dword [0x1004a164]
push 0xfff114e6
push 0x7042e93a
push eax
push edx
call fcn.1002e960
mov ecx, eax
mov esi, edx
movsx eax, byte [ebp - 6]
add eax, dword [ebp - 0x4c]
cdq
add ecx, eax
adc esi, edx
mov dword [str.J64_], ecx
mov dword [0x1004a13c], esi
mov edx, dword [ebp - 0x78]
add edx, 0x72
mov dword [ebp - 0x340], edx
push 0
call fcn.10024660
add esp, 4
mov byte [ebp - 4], al
movsx eax, byte [ebp - 4]
test eax, eax
je 0x1000a9fc
movzx ecx, word [ebp - 0x1c]
push ecx
call fcn.10024660
add esp, 4
mov dword [ebp - 0x5c], eax
cmp dword [ebp - 0x5c], 0
jae 0x1000a89d
mov dword [ebp - 0x128], 1
jmp 0x1000a8a7
mov dword [ebp - 0x128], 0
cmp dword [ebp - 0x5c], 0x1f
jae 0x1000a8b9
mov dword [ebp - 0x12c], 1
jmp 0x1000a8c3
mov dword [ebp - 0x12c], 0
mov edx, dword [ebp - 0x128]
cmp edx, dword [ebp - 0x12c]
jge 0x1000a9c4
movsx eax, word [ebp - 0x14]
cdq
mov dword [ebp - 0x520], eax
mov dword [ebp - 0x51c], edx
mov eax, dword [ebp - 0x51c]
cmp eax, dword [0x1004a13c]
jl 0x1000a910
jg 0x1000a904
mov ecx, dword [ebp - 0x520]
cmp ecx, dword [str.J64_]
jbe 0x1000a910
mov dword [ebp - 0x130], 1
jmp 0x1000a91a
mov dword [ebp - 0x130], 0
movsx edx, word [ebp - 0x14]
cmp edx, 0x53
jle 0x1000a92f
mov dword [ebp - 0x134], 1
jmp 0x1000a939
mov dword [ebp - 0x134], 0
mov eax, dword [ebp - 0x130]
cmp eax, dword [ebp - 0x134]
jne 0x1000a9a3
movsx eax, byte [str.address_family_not]
cdq
xor eax, dword [0x1004a0d0]
mov esi, dword [ebp - 0x58]
sub esi, eax
movzx ecx, byte [0x1004a06b]
mov eax, dword [0x1004a128]
sub eax, ecx
not eax
cdq
mov ecx, eax
mov edi, edx
movsx eax, word [0x1004a100]
cdq
mov ebx, dword [ebp - 0x34]
sub eax, dword [ebp - 0x38]
sbb edx, ebx
push edx
push eax
push edi
push ecx
call fcn.1002e960
add esi, eax
mov word [ebp - 0xc], si
movzx edx, byte [ebp - 5]
movzx eax, word [ebp - 0xc]
add edx, eax
movzx ecx, byte [ebp - 5]
add ecx, edx
mov byte [ebp - 5], cl
jmp 0x1000a9c2
mov edx, dword [ebp - 0x2c]
mov dword [0x1004a140], edx
mov eax, dword [0x1004a148]
sub eax, dword [ebp - 0x30]
mov ecx, dword [0x1004a148]
add ecx, eax
mov dword [0x1004a148], ecx
jmp 0x1000a9fc
movzx eax, word [0x1004a0f0]
not eax
cdq
mov esi, eax
mov edx, dword [0x1004a108]
not edx
mov eax, dword [0x1004a10c]
not eax
push eax
push edx
mov ecx, dword [ebp - 0x3c]
push ecx
mov edx, dword [ebp - 0x40]
push edx
call fcn.1002e960
sub esi, eax
add esi, dword [0x1004a104]
mov dword [0x1004a110], esi
mov eax, dword [ebp - 0x78]
add eax, 0x7c
mov dword [ebp - 0x33c], eax
mov ecx, dword [ebp - 0x33c]
cmp dword [ebp - 0x340], ecx
je 0x1000e61a
mov edx, dword [0x1004ac78]
xor eax, eax
mov dword [0x1004a168], edx
mov dword [0x1004a16c], eax
mov cl, byte [0x1004ac78]
mov byte [ebp - 0xd], cl
mov edx, 0xeef86
mov dword [0x1004a168], 0x5bded292
mov dword [0x1004a16c], edx
mov ecx, dword [0x1004a168]
mov esi, dword [0x1004a16c]
movsx eax, byte [ebp - 2]
add eax, 1
cdq
mov dword [ebp - 0x528], ecx
mov dword [ebp - 0x524], esi
mov dword [ebp - 0x3ac], eax
mov dword [ebp - 0x3a8], edx
mov edx, dword [ebp - 0x528]
cmp edx, dword [ebp - 0x3ac]
jne 0x1000ac73
mov eax, dword [ebp - 0x524]
cmp eax, dword [ebp - 0x3a8]
jne 0x1000ac73
movsx ecx, byte [ebp - 2]
test ecx, ecx
je 0x1000ab42
movsx edx, byte [ebp - 6]
add edx, 0xf0
mov dword [0x1004a128], edx
mov eax, dword [0x1004a140]
xor eax, 0xbb6c
jne 0x1000aacf
mov dword [ebp - 0x138], 1
jmp 0x1000aad9
mov dword [ebp - 0x138], 0
xor ecx, ecx
mov edx, dword [0x1004a0f8]
mov eax, dword [0x1004a0fc]
sub edx, dword [0x1004a158]
sbb eax, ecx
mov dword [ebp - 0x538], edx
mov dword [ebp - 0x534], eax
mov ecx, dword [ebp - 0x538]
or ecx, dword [ebp - 0x534]
jne 0x1000ab14
mov dword [ebp - 0x13c], 1
jmp 0x1000ab1e
mov dword [ebp - 0x13c], 0
mov edx, dword [ebp - 0x30]
not edx
imul edx, dword [ebp - 0x4c]
movsx eax, byte [0x1004a092]
xor edx, eax
mov ecx, dword [ebp - 0x138]
add ecx, dword [ebp - 0x13c]
imul edx, ecx
mov byte [ebp - 1], dl
cmp dword [0x1004a190], 1
jne 0x1000ac73
mov edx, 1
mov word [0x1004a150], dx
movzx eax, byte [ebp - 3]
not eax
cdq
mov ecx, dword [0x1004a0c0]
mov esi, dword [0x1004a0c4]
push esi
push ecx
push edx
push eax
call fcn.1002e960
not eax
mov word [ebp - 0x1c], ax
movzx edx, word [0x1004a150]
mov dword [ebp - 0x140], edx
cmp dword [ebp - 0x140], 0
je 0x1000aba1
cmp dword [ebp - 0x140], 1
je 0x1000abc0
jmp 0x1000ac48
mov eax, dword [0x1004a104]
imul eax, dword [0x1004a144]
mov ecx, dword [0x1004a104]
add ecx, eax
mov dword [0x1004a104], ecx
jmp 0x1000ac48
mov edx, dword [0x1004a0f8]
mov eax, dword [0x1004a0fc]
mov dword [ebp - 0x540], edx
mov dword [ebp - 0x53c], eax
mov ecx, dword [ebp - 0x540]
or ecx, dword [ebp - 0x53c]
jne 0x1000abf1
mov dword [ebp - 0x144], 1
jmp 0x1000abfb
mov dword [ebp - 0x144], 0
mov ecx, dword [0x1004a0d8]
mov esi, dword [0x1004a0dc]
not ecx
not esi
movzx eax, byte [ebp - 1]
movsx edx, byte [ebp - 4]
sub eax, edx
not eax
cdq
push edx
push eax
push esi
push ecx
call fcn.1002e960
movzx ecx, byte [ebp - 3]
sub ecx, dword [ebp - 0x5c]
xor ecx, dword [ebp - 0x144]
xor esi, esi
add eax, ecx
adc edx, esi
mov dword [0x1004a0d0], eax
mov dword [0x1004a0d4], edx
mov edx, dword [ebp - 0x24]
sub edx, dword [ebp - 0x30]
mov dword [ebp - 0x24], edx
jmp 0x1000ac73
mov ecx, 0xeef86
mov dword [0x1004a168], 0x5bded292
mov dword [0x1004a16c], ecx
mov edx, dword [0x1004a0c8]
sub edx, 1
mov dword [0x1004a0c8], edx
mov eax, dword [0x1004a158]
and eax, dword [0x1004a178]
mov dword [0x1004a158], eax
mov ecx, dword [ebp - 0x148]
imul ecx, dword [ebp - 0x148]
cmp dword [ebp - 0x344], ecx
je 0x1000afbf
movsx edx, byte [0x1004a017]
movzx eax, word [ebp - 0x18]
cmp edx, eax
jl 0x1000acdb
mov dword [ebp - 0x14c], 1
jmp 0x1000ace5
mov dword [ebp - 0x14c], 0
movsx ecx, byte [0x1004a017]
cmp ecx, 0x4d
jl 0x1000acfd
mov dword [ebp - 0x150], 1
jmp 0x1000ad07
mov dword [ebp - 0x150], 0
mov edx, dword [ebp - 0x14c]
cmp edx, dword [ebp - 0x150]
jle 0x1000adf1
movsx eax, byte [ebp - 4]
cmp dword [ebp - 0x44], eax
jge 0x1000ad45
movsx eax, byte [0x1004a03f]
cdq
add eax, 0xa9b7bb1b
adc edx, 0xcbfdf
mov dword [0x1004a0f8], eax
mov dword [0x1004a0fc], edx
jmp 0x1000adec
cmp dword [ebp - 0x30], 0
jne 0x1000ad64
mov ecx, 0xfbc243e9
or ecx, 0xab0bf
jne 0x1000ad64
mov dword [ebp - 0x158], 0
jmp 0x1000ad6e
mov dword [ebp - 0x158], 1
cmp dword [ebp - 0x24], 0
jne 0x1000ad80
mov dword [ebp - 0x154], 1
jmp 0x1000ad8a
mov dword [ebp - 0x154], 0
mov edx, dword [ebp - 0x24]
cmp edx, dword [ebp - 0x154]
ja 0x1000ada1
mov dword [ebp - 0x15c], 1
jmp 0x1000adab
mov dword [ebp - 0x15c], 0
mov eax, dword [ebp - 0x158]
not eax
mov ecx, dword [ebp - 0x15c]
not ecx
add eax, ecx
je 0x1000adec
mov dl, byte [0x1004ac78]
mov byte [0x1004a056], dl
movsx eax, word [ebp - 0x20]
cdq
mov ecx, dword [0x1004a180]
mov esi, dword [0x1004a184]
xor ecx, eax
xor esi, edx
mov dword [0x1004a180], ecx
mov dword [0x1004a184], esi
jmp 0x1000aed6
mov edx, dword [ebp - 0x44]
not edx
test edx, edx
je 0x1000ae94
mov eax, dword [0x1004a190]
not eax
xor ecx, ecx
add eax, dword [0x1004a0e8]
adc ecx, dword [0x1004a0ec]
mov dword [ebp - 0x548], eax
mov dword [ebp - 0x544], ecx
mov edx, dword [ebp - 0x548]
or edx, dword [ebp - 0x544]
jne 0x1000ae39
mov dword [ebp - 0x164], 1
jmp 0x1000ae43
mov dword [ebp - 0x164], 0
movzx eax, byte [ebp - 1]
test eax, eax
jne 0x1000ae57
mov dword [ebp - 0x160], 1
jmp 0x1000ae61
mov dword [ebp - 0x160], 0
movzx eax, word [0x1004a124]
or eax, dword [ebp - 0x160]
xor eax, dword [ebp - 0x164]
cdq
mov dword [0x1004a0f8], eax
mov dword [0x1004a0fc], edx
xor ecx, ecx
mov dword [0x1004a160], 0xd69b255f
mov dword [0x1004a164], ecx
jmp 0x1000aed6
mov edx, 1
test edx, edx
je 0x1000aed6
movsx eax, byte [0x1004a092]
cdq
mov ecx, dword [0x1004a168]
mov esi, dword [0x1004a16c]
push edx
push eax
push esi
push ecx
call fcn.1002e960
mov ecx, dword [0x1004a168]
mov esi, dword [0x1004a16c]
sub ecx, eax
sbb esi, edx
mov dword [0x1004a168], ecx
mov dword [0x1004a16c], esi
xor edx, edx
mov dword [0x1004a0c0], 0xf87c
mov dword [0x1004a0c4], edx
movsx eax, byte [ebp - 2]
add eax, 0x37d07db2
cdq
mov dword [ebp - 0x550], eax
mov dword [ebp - 0x54c], edx
mov eax, dword [0x1004a108]
cmp eax, dword [ebp - 0x550]
jne 0x1000af6f
mov ecx, dword [0x1004a10c]
cmp ecx, dword [ebp - 0x54c]
jne 0x1000af6f
movzx edx, byte [ebp - 1]
add edx, dword [0x1004a15c]
cmp edx, 1
jne 0x1000af6f
movzx eax, word [ebp - 0xc]
movsx ecx, word [0x1004a120]
jmp 0x1000aed6
cmp dword [ebp - 0x768], 0x40
jbe 0x1000afbf
movsx edx, word [ebp - 0x14]
movzx eax, byte [ebp - 3]
xor edx, eax
mov word [ebp - 0x14], dx
movzx eax, byte [0x1004a0bc]
cdq
add eax, dword [ebp - 0x2c]
mov byte [0x1004a0bc], al
mov ecx, dword [ebp - 0x768]
sub ecx, 0x40
push ecx
mov edx, dword [ebp + 8]
add edx, 0x40
push edx
mov eax, 1
imul ecx, eax, 0
lea edx, [ebp + ecx - 0x1160]
push edx
call fcn.1002f710
add esp, 0xc
mov eax, dword [str.timed_out]
mov dword [ebp - 0x67c], eax
mov ecx, dword [0x1003b704]
mov dword [ebp - 0x678], ecx
mov dx, word [0x1003b708]
mov word [ebp - 0x674], dx
lea eax, [ebp - 0x67c]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov byte [0x1004a03e], al
mov ecx, dword [ebp + 8]
add ecx, dword [ebp - 0x768]
mov dword [ebp - 0x178], ecx
mov ecx, 0x3e
mov esi, dword [ebp - 0x178]
lea edi, [ebp - 0x8c4]
rep movsd dword es:[edi], dword [esi]
cmp dword [ebp - 0x8c4], 0x4550
jne 0x1000e61a
movsx edx, byte [0x1004a03e]
cmp edx, dword [0x1004a148]
je 0x1000b043
cmp dword [0x1004a128], 0x37d0f781
jle 0x1000b06a
mov eax, dword [0x1004a17c]
xor ecx, ecx
mov edx, dword [ebp - 0x38]
mov esi, dword [ebp - 0x34]
mov dword [ebp - 0x558], eax
mov dword [ebp - 0x554], ecx
mov dword [ebp - 0x560], edx
mov dword [ebp - 0x55c], esi
jmp 0x1000b0e4
movzx edx, byte [0x1004a056]
not edx
test edx, edx
je 0x1000b0e4
mov eax, dword [0x1004a14c]
add eax, 0x229505b
mov dword [ebp - 0x5c], eax
movsx ecx, byte [0x1004a03e]
test ecx, ecx
jne 0x1000b09b
mov dword [ebp - 0x168], 1
jmp 0x1000b0a5
mov dword [ebp - 0x168], 0
mov edx, dword [0x1004a144]
xor edx, dword [ebp - 0x168]
jne 0x1000b0c7
xor eax, eax
mov dword [ebp - 0x568], 1
mov dword [ebp - 0x564], eax
jmp 0x1000b0d2
xorps xmm0, xmm0
movlpd qword [ebp - 0x568], xmm0
mov ecx, dword [ebp - 0x568]
sub ecx, dword [0x1004a170]
mov byte [0x1004a06b], cl
mov edx, dword [0x1004ac78]
mov dword [ebp - 0x80], edx
mov dword [0x1004a190], 0xfc62fa96
movsx eax, byte [ebp - 4]
cdq
mov ecx, eax
mov edx, dword [0x1004a180]
mov eax, dword [0x1004a184]
mov dword [ebp - 0x6d4], eax
add ecx, edx
movsx eax, byte [ebp - 4]
cdq
sub eax, ecx
mov byte [ebp - 4], al
mov ecx, dword [ebp - 0x80]
add ecx, 0xd5
mov dword [ebp - 0x6d8], ecx
mov dword [ebp - 0x7c], 0x183
jmp 0x1000b13c
mov edx, dword [ebp - 0x7c]
sub edx, 1
mov dword [ebp - 0x7c], edx
cmp dword [ebp - 0x7c], 0
jle 0x1000b25e
movsx eax, byte [ebp - 6]
cdq
push edx
push eax
mov eax, dword [ebp - 0x30]
xor ecx, ecx
push ecx
push eax
mov edx, dword [0x1004a0c4]
push edx
mov eax, dword [0x1004a0c0]
push eax
push 0
push 0xb8
mov ecx, dword [ebp - 0x24]
xor edx, edx
push edx
push ecx
call fcn.100243a0
add esp, 0x28
mov dword [0x1004a15c], eax
cmp dword [0x1004a15c], 0
jge 0x1000b1cb
movzx eax, byte [ebp - 0xd]
sub eax, 0xb3df
mov byte [ebp - 1], al
movzx eax, word [0x1004a0f0]
cdq
push 0x58e48
push 0x74dca28e
push edx
push eax
call fcn.1002e960
mov ecx, dword [0x1004a0d8]
mov esi, dword [0x1004a0dc]
add ecx, eax
adc esi, edx
mov dword [0x1004a0d8], ecx
mov dword [0x1004a0dc], esi
jmp 0x1000b250
movzx edx, word [ebp - 0x18]
not edx
test edx, edx
jne 0x1000b1ec
movsx eax, word [0x1004a100]
test eax, eax
je 0x1000b1ec
mov dword [ebp - 0x16c], 0
jmp 0x1000b1f6
mov dword [ebp - 0x16c], 1
movzx ecx, word [0x1004a0f0]
cmp dword [ebp - 0x24], ecx
je 0x1000b20e
mov dword [ebp - 0x170], 1
jmp 0x1000b218
mov dword [ebp - 0x170], 0
mov edx, dword [ebp - 0x16c]
cmp edx, dword [ebp - 0x170]
jge 0x1000b234
movsx eax, word [ebp - 0x14]
sub eax, 0x1b473f89
mov dword [ebp - 0x30], eax
jmp 0x1000b250
movsx ecx, word [ebp - 0x20]
test ecx, ecx
je 0x1000b250
movsx edx, word [ebp - 0x20]
sub edx, dword [0x1004a178]
movsx eax, word [ebp - 0x20]
sub eax, edx
mov word [ebp - 0x20], ax
mov ecx, dword [ebp - 0x44]
add ecx, 1
mov dword [ebp - 0x44], ecx
jmp 0x1000b133
mov edx, dword [ebp - 0x80]
add edx, 0x38b
mov dword [ebp - 0x350], edx
mov eax, dword [0x1004a17c]
mov ecx, dword [0x1004a160]
mov edx, dword [0x1004a164]
mov dword [ebp - 0x6dc], edx
sub eax, ecx
mov dword [0x1004a17c], eax
mov eax, dword [ebp - 0x80]
add eax, 0x304
mov dword [ebp - 0x34c], eax
mov ecx, dword [ebp - 0x40]
add ecx, 0xbba6c628
mov dword [ebp - 0x50], ecx
cmp dword [ebp - 0x24], 0
jne 0x1000b2b7
mov dword [ebp - 0x174], 1
jmp 0x1000b2c1
mov dword [ebp - 0x174], 0
movsx edx, byte [ebp - 4]
and edx, dword [ebp - 0x174]
movzx eax, word [ebp - 0x1c]
imul edx, eax
movzx ecx, byte [ebp - 1]
movsx eax, word [ebp - 0x20]
add eax, dword [ebp - 0x5c]
add ecx, eax
sub edx, ecx
mov dword [0x1004a14c], edx
movzx ecx, word [ebp - 0x8be]
imul edx, ecx, 0x28
push edx
mov eax, dword [ebp - 0x178]
add eax, 0xf8
push eax
mov ecx, 0x28
imul edx, ecx, 0
lea eax, [ebp + edx - 0xa54]
push eax
call fcn.1002f710
add esp, 0xc
push 0x40
push 0x103000
mov ecx, dword [ebp - 0x874]
push ecx
push 0
push 0
push 0
call fcn.10001140
add esp, 8
call eax
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x48], 0
je 0x1000e61a
movzx eax, byte [0x1004a06b]
cdq
mov dword [ebp - 0x570], eax
mov dword [ebp - 0x56c], edx
mov edx, dword [ebp - 0x570]
cmp edx, dword [ebp - 0x58]
jne 0x1000b36b
mov eax, dword [ebp - 0x56c]
cmp eax, dword [ebp - 0x54]
je 0x1000b38b
mov ecx, dword [0x1004ac78]
xor edx, edx
mov dword [0x1004a170], ecx
mov dword [0x1004a174], edx
mov dword [0x1004a154], 0x63fa5926
jmp 0x1000b3a5
movzx eax, word [ebp - 0x18]
cmp eax, dword [0x1004a144]
jle 0x1000b3a5
movzx ecx, byte [ebp - 3]
imul ecx, dword [0x1004a128]
mov byte [ebp - 3], cl
mov edx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x34]
push 0
push 0x1d27
push eax
push edx
call fcn.1002e960
mov dword [0x1004a0e0], eax
mov dword [0x1004a0e4], edx
mov cl, byte [str.address_family_not]
mov byte [0x1004a06b], cl
mov edx, dword [0x1004ac78]
mov dword [ebp - 0x84], edx
movzx eax, byte [ebp - 1]
movsx ecx, byte [ebp - 6]
imul eax, ecx
mov byte [ebp - 1], al
mov edx, dword [ebp - 0x84]
add edx, 0xbd
mov dword [ebp - 0x6e0], edx
call dword [sym.imp.KERNEL32.dll_GetSystemDefaultLCID]
mov byte [ebp - 4], al
mov eax, dword [ebp - 0x84]
add eax, 0x7b
mov dword [ebp - 0x6e4], eax
mov ecx, dword [ebp - 0x84]
add ecx, 0x2e7
mov dword [ebp - 0x17c], ecx
mov edx, dword [ebp - 0x17c]
or edx, 0x2ad
cmp edx, dword [ebp - 0x17c]
je 0x1000e61a
mov eax, dword [0x1004a154]
push eax
call dword [sym.imp.USER32.dll_GetParent]
mov dword [0x1004a15c], eax
mov cl, byte [ebp - 0x14]
mov byte [0x1004a03e], cl
mov edx, dword [0x1004ac78]
mov dword [ebp - 0x88], edx
mov eax, dword [ebp - 0x88]
add eax, 0x1cc
mov dword [ebp - 0x368], eax
push 0x104
lea ecx, [ebp - 0xd60]
push ecx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
mov byte [ebp - 0xd], al
mov edx, dword [ebp - 0x88]
add edx, 0x1e5
mov dword [ebp - 0x36c], edx
push 0
push 0xe8
call fcn.10024090
add esp, 8
mov dword [0x1004a0f8], eax
mov dword [0x1004a0fc], edx
mov eax, dword [0x1004a0f8]
mov ecx, dword [0x1004a0fc]
mov dword [ebp - 0x578], eax
mov dword [ebp - 0x574], ecx
cmp dword [ebp - 0x574], 0
jg 0x1000b4f3
jl 0x1000b4e1
cmp dword [ebp - 0x578], 0
jae 0x1000b4f3
xor edx, edx
mov dword [0x1004a0c0], 0x4962
mov dword [0x1004a0c4], edx
mov eax, dword [ebp - 0x88]
add eax, 0x153
mov dword [ebp - 0x284], eax
cmp dword [0x1004a144], 0
je 0x1000b50f
jmp 0x1000b559
movsx ecx, byte [ebp - 2]
test ecx, ecx
je 0x1000b559
movzx edx, word [ebp - 0x1c]
movzx eax, byte [0x1004a056]
sub edx, eax
movzx ecx, word [ebp - 0x1c]
sub ecx, edx
mov word [ebp - 0x1c], cx
movsx edx, byte [0x1004a017]
mov eax, dword [0x1004a148]
xor eax, edx
cdq
mov ecx, dword [0x1004a188]
mov esi, dword [0x1004a18c]
push edx
push eax
push esi
push ecx
call fcn.1002e960
not eax
mov byte [0x1004a06b], al
mov ecx, 0x10
lea esi, [ebp - 0x7a4]
mov edi, dword [ebp - 0x48]
rep movsd dword es:[edi], dword [esi]
mov edx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x34]
push 0
push 0x1981d130
push eax
push edx
call fcn.1002e960
mov dword [ebp - 0x30], eax
mov edi, dword [ebp - 0x48]
add edi, dword [ebp - 0x768]
mov ecx, 0x3e
lea esi, [ebp - 0x8c4]
rep movsd dword es:[edi], dword [esi]
mov byte [ebp - 4], 0x7d
mov ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 0x34]
add ecx, 0x55f7
adc edx, 0
mov dword [0x1004a168], ecx
mov dword [0x1004a16c], edx
movzx eax, word [ebp - 0x8be]
imul ecx, eax, 0x28
push ecx
mov edx, 0x28
imul eax, edx, 0
lea ecx, [ebp + eax - 0xa54]
push ecx
mov edx, dword [ebp - 0x768]
mov eax, dword [ebp - 0x48]
lea ecx, [eax + edx + 0xf8]
push ecx
call fcn.1002f710
add esp, 0xc
cmp dword [ebp - 0x768], 0x40
jbe 0x1000b901
movzx edx, word [ebp - 0xc]
test edx, edx
je 0x1000b822
push 0
push 9
call fcn.10024090
add esp, 8
mov word [ebp - 0xc], ax
mov ecx, dword [ebp - 0x38]
mov esi, dword [ebp - 0x34]
movsx eax, word [ebp - 0x14]
cdq
mov dword [ebp - 0x580], ecx
mov dword [ebp - 0x57c], esi
mov dword [ebp - 0x588], eax
mov dword [ebp - 0x584], edx
mov edx, dword [ebp - 0x580]
cmp edx, dword [ebp - 0x588]
jne 0x1000b651
mov eax, dword [ebp - 0x57c]
cmp eax, dword [ebp - 0x584]
je 0x1000b665
xor ecx, ecx
mov dword [ebp - 0x2e4], 1
mov dword [ebp - 0x2e0], ecx
jmp 0x1000b670
xorps xmm0, xmm0
movlpd qword [ebp - 0x2e4], xmm0
movzx eax, byte [ebp - 3]
cdq
xor eax, dword [0x1004a0d8]
xor edx, dword [0x1004a0dc]
mov dword [ebp - 0x590], eax
mov dword [ebp - 0x58c], edx
mov edx, dword [ebp - 0x2e4]
cmp edx, dword [ebp - 0x590]
jne 0x1000b6a9
mov eax, dword [ebp - 0x2e0]
cmp eax, dword [ebp - 0x58c]
je 0x1000b6c0
mov cl, byte [0x1004a178]
mov byte [0x1004a0ba], cl
mov edx, dword [ebp - 0x58]
mov dword [ebp - 0x44], edx
jmp 0x1000b820
movzx eax, word [ebp - 0xc]
test eax, eax
jne 0x1000b6dc
xor ecx, ecx
mov dword [ebp - 0x2ec], 1
mov dword [ebp - 0x2e8], ecx
jmp 0x1000b6e7
xorps xmm0, xmm0
movlpd qword [ebp - 0x2ec], xmm0
mov edx, dword [0x1004a11c]
cmp edx, dword [ebp - 0x2e8]
jb 0x1000b710
ja 0x1000b704
mov eax, dword [0x1004a118]
cmp eax, dword [ebp - 0x2ec]
jb 0x1000b710
mov dword [ebp - 0x180], 1
jmp 0x1000b71a
mov dword [ebp - 0x180], 0
movsx ecx, word [0x1004a100]
movzx edx, word [0x1004a0cc]
cmp ecx, edx
jle 0x1000b738
mov dword [ebp - 0x184], 1
jmp 0x1000b742
mov dword [ebp - 0x184], 0
mov eax, dword [ebp - 0x180]
cmp eax, dword [ebp - 0x184]
jge 0x1000b77d
movsx eax, word [ebp - 0x14]
sar eax, 7
cdq
mov dword [0x1004a170], eax
mov dword [0x1004a174], edx
movzx eax, byte [ebp - 1]
add eax, 0xab9d
cdq
mov dword [0x1004a188], eax
mov dword [0x1004a18c], edx
jmp 0x1000b820
mov ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 0x34]
mov dword [ebp - 0x598], ecx
mov dword [ebp - 0x594], edx
mov eax, dword [ebp - 0x598]
or eax, dword [ebp - 0x594]
jne 0x1000b7a6
cmp dword [0x1004a154], 0
je 0x1000b7d1
mov ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 0x34]
mov dword [ebp - 0x6e8], edx
add ecx, 0x803f0ebd
mov dword [0x1004a128], ecx
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x28]
mov dword [0x1004a188], eax
mov dword [0x1004a18c], ecx
jmp 0x1000b820
movsx edx, byte [0x1004a093]
test edx, edx
jne 0x1000b7e8
mov dword [ebp - 0x188], 1
jmp 0x1000b7f2
mov dword [ebp - 0x188], 0
movzx eax, word [ebp - 0x18]
mov ecx, dword [ebp - 0x188]
sub ecx, eax
jne 0x1000b819
mov edx, dword [0x1004a170]
or edx, dword [0x1004a174]
jne 0x1000b819
movzx eax, word [0x1004a0cc]
test eax, eax
je 0x1000b820
mov dword [ebp - 0x50], 0x3df62fef
jmp 0x1000b877
mov ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 0x34]
mov dword [ebp - 0x5a0], ecx
mov dword [ebp - 0x59c], edx
mov eax, dword [ebp - 0x5a0]
or eax, dword [ebp - 0x59c]
je 0x1000b853
mov ecx, dword [ebp - 0x30]
sub ecx, 0xa99b
mov dword [0x1004a15c], ecx
jmp 0x1000b877
mov edx, 0xbadfa923
test edx, edx
je 0x1000b877
mov eax, dword [0x1004a154]
xor ecx, ecx
mov edx, dword [ebp - 0x28]
push edx
mov edx, dword [ebp - 0x2c]
push edx
push ecx
push eax
call fcn.1002e960
mov dword [0x1004a154], eax
mov eax, dword [str.__0exception__QEAA]
mov dword [ebp - 0x690], eax
mov ecx, dword [0x1003b718]
mov dword [ebp - 0x68c], ecx
mov edx, dword [0x1003b71c]
mov dword [ebp - 0x688], edx
mov eax, dword [0x1003b720]
mov dword [ebp - 0x684], eax
mov cx, word [0x1003b724]
mov word [ebp - 0x680], cx
mov dl, byte [0x1003b726]
mov byte [ebp - 0x67e], dl
lea eax, [ebp - 0x690]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
cdq
mov dword [str.J64_], eax
mov dword [0x1004a13c], edx
mov ecx, dword [ebp - 0x768]
sub ecx, 0x40
push ecx
mov edx, 1
imul eax, edx, 0
lea ecx, [ebp + eax - 0x1160]
push ecx
mov edx, dword [ebp - 0x48]
add edx, 0x40
push edx
call fcn.1002f710
add esp, 0xc
movzx eax, byte [0x1004a0ba]
cdq
add eax, 0x3079abd2
adc edx, 0x79eaf
mov dword [0x1004a130], eax
mov dword [0x1004a134], edx
mov dword [ebp - 0x64], 0
jmp 0x1000b931
mov eax, dword [ebp - 0x64]
add eax, 1
mov dword [ebp - 0x64], eax
movzx ecx, word [ebp - 0x8be]
cmp dword [ebp - 0x64], ecx
jge 0x1000ba55
mov edx, 2
imul eax, edx, 0x31
movsx eax, word [eax + 0x1025d5b0]
cdq
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], edx
imul ecx, dword [ebp - 0x64], 0x28
mov edx, dword [ebp + 8]
add edx, dword [ebp + ecx - 0xa40]
mov dword [ebp - 0x348], edx
movsx eax, word [0x1004a100]
test eax, eax
je 0x1000b97b
jmp 0x1000ba26
mov ecx, dword [0x1004a130]
mov edx, dword [0x1004a134]
mov dword [ebp - 0x5a8], ecx
mov dword [ebp - 0x5a4], edx
mov eax, dword [ebp - 0x5a8]
or eax, dword [ebp - 0x5a4]
jne 0x1000b9ad
mov dword [ebp - 0x18c], 1
jmp 0x1000b9b7
mov dword [ebp - 0x18c], 0
movzx ecx, byte [0x1004a056]
cmp ecx, dword [ebp - 0x18c]
jge 0x1000b9d2
mov dword [ebp - 0x194], 1
jmp 0x1000b9dc
mov dword [ebp - 0x194], 0
movsx edx, byte [ebp - 6]
test edx, edx
je 0x1000b9f8
movzx eax, word [ebp - 0x18]
test eax, eax
je 0x1000b9f8
mov dword [ebp - 0x190], 1
jmp 0x1000ba02
mov dword [ebp - 0x190], 0
mov ecx, dword [ebp - 0x190]
not ecx
cmp dword [ebp - 0x194], ecx
jl 0x1000ba26
movsx eax, byte [ebp - 4]
cdq
mov edx, dword [0x1004a108]
sub edx, eax
add edx, dword [ebp - 0x24]
mov word [ebp - 0x18], dx
imul eax, dword [ebp - 0x64], 0x28
mov ecx, dword [ebp + eax - 0xa44]
push ecx
mov edx, dword [ebp - 0x348]
push edx
imul eax, dword [ebp - 0x64], 0x28
mov ecx, dword [ebp - 0x48]
add ecx, dword [ebp + eax - 0xa48]
push ecx
call fcn.1002f710
add esp, 0xc
jmp 0x1000b928
mov edx, dword [ebp - 0x34c]
add edx, dword [ebp - 0x350]
cmp edx, 0xf1e0
je 0x1000e61a
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
mov dword [ebp - 0x5b0], eax
mov dword [ebp - 0x5ac], ecx
mov edx, dword [ebp - 0x5b0]
or edx, dword [ebp - 0x5ac]
jne 0x1000ba99
mov dword [ebp - 0x198], 1
jmp 0x1000baa3
mov dword [ebp - 0x198], 0
cmp dword [0x1004a154], 0
jne 0x1000bab8
mov dword [ebp - 0x19c], 1
jmp 0x1000bac2
mov dword [ebp - 0x19c], 0
movzx eax, byte [ebp - 3]
movsx ecx, byte [ebp - 4]
add eax, ecx
jne 0x1000bae2
xor edx, edx
mov dword [ebp - 0x5b8], 1
mov dword [ebp - 0x5b4], edx
jmp 0x1000baed
xorps xmm0, xmm0
movlpd qword [ebp - 0x5b8], xmm0
mov eax, dword [ebp - 0x198]
imul eax, dword [0x1004a0c8]
movsx ecx, byte [ebp - 4]
add eax, dword [ebp - 0x19c]
add ecx, eax
mov esi, ecx
movsx eax, word [ebp - 0x14]
cdq
push 0x9e833
push 0xdc331e9c
push edx
push eax
call fcn.1002e960
add eax, dword [ebp - 0x5b8]
xor esi, eax
mov dword [0x1004a104], esi
imul edx, dword [ebp - 0x24], 0x7a24639b
xor eax, eax
mov dword [0x1004a118], edx
mov dword [0x1004a11c], eax
mov ecx, dword [0x1004ac78]
mov dword [ebp - 0xa4], ecx
movsx edx, byte [0x1004a093]
test edx, edx
jne 0x1000bb6b
xor eax, eax
mov dword [ebp - 0x2f4], 1
mov dword [ebp - 0x2f0], eax
jmp 0x1000bb76
xorps xmm0, xmm0
movlpd qword [ebp - 0x2f4], xmm0
mov ecx, dword [0x1004a180]
mov edx, dword [0x1004a184]
mov dword [ebp - 0x5c0], ecx
mov dword [ebp - 0x5bc], edx
mov eax, dword [ebp - 0x5c0]
cmp eax, dword [ebp - 0x2f4]
jne 0x1000bbaa
mov ecx, dword [ebp - 0x5bc]
cmp ecx, dword [ebp - 0x2f0]
je 0x1000bbe0
mov edx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x5c8], edx
mov dword [ebp - 0x5c4], eax
mov ecx, dword [ebp - 0x3c]
cmp ecx, dword [ebp - 0x5c4]
ja 0x1000bbe0
jb 0x1000bbd4
mov edx, dword [ebp - 0x40]
cmp edx, dword [ebp - 0x5c8]
ja 0x1000bbe0
mov dword [ebp - 0x1a0], 1
jmp 0x1000bbea
mov dword [ebp - 0x1a0], 0
movsx eax, word [ebp - 0x14]
movzx ecx, byte [ebp - 1]
cmp eax, ecx
jl 0x1000bc15
movzx edx, byte [0x1004a056]
test edx, edx
je 0x1000bc09
movsx eax, byte [ebp - 2]
test eax, eax
jne 0x1000bc15
mov dword [ebp - 0x1a4], 1
jmp 0x1000bc1f
mov dword [ebp - 0x1a4], 0
mov ecx, dword [ebp - 0x1a0]
cmp ecx, dword [ebp - 0x1a4]
jl 0x1000bca5
mov edx, dword [0x1004a148]
cmp dword [ebp - 0x30], edx
jae 0x1000bc44
mov dword [ebp - 0x1a8], 1
jmp 0x1000bc4e
mov dword [ebp - 0x1a8], 0
cmp dword [ebp - 0x30], 0x26
jae 0x1000bc60
mov dword [ebp - 0x1ac], 1
jmp 0x1000bc6a
mov dword [ebp - 0x1ac], 0
mov eax, dword [ebp - 0x1a8]
cmp eax, dword [ebp - 0x1ac]
jge 0x1000bc89
movsx ecx, byte [str.address_family_not]
shl ecx, 1
mov dword [0x1004a128], ecx
jmp 0x1000bca3
movsx dx, byte [0x1004a03f]
mov eax, 2
imul ecx, eax, 0x95
mov word [ecx + 0x100d6370], dx
jmp 0x1000bcd7
mov edx, dword [ebp - 0x40]
sub edx, 0x66342b50
mov eax, dword [ebp - 0x3c]
sbb eax, 0
mov ecx, dword [0x1004a118]
sub ecx, edx
mov edx, dword [0x1004a11c]
sbb edx, eax
mov dword [0x1004a118], ecx
mov dword [0x1004a11c], edx
mov byte [0x1004a093], 0x8a
mov eax, dword [ebp - 0xa4]
add eax, 0x295c
mov dword [ebp - 0x354], eax
movzx ecx, word [0x1004a0f0]
test ecx, ecx
jne 0x1000bd07
xor edx, edx
mov dword [ebp - 0x2fc], 1
mov dword [ebp - 0x2f8], edx
jmp 0x1000bd12
xorps xmm0, xmm0
movlpd qword [ebp - 0x2fc], xmm0
movzx eax, byte [0x1004a0ba]
movsx ecx, byte [ebp - 2]
imul eax, ecx
movsx edx, word [0x1004a100]
movsx ecx, word [0x1004a100]
imul edx, ecx
add eax, edx
cdq
mov ecx, dword [0x1004a0c0]
mov esi, dword [0x1004a0c4]
add ecx, dword [ebp - 0x58]
adc esi, dword [ebp - 0x54]
sub ecx, dword [ebp - 0x2fc]
sbb esi, dword [ebp - 0x2f8]
push esi
push ecx
push edx
push eax
call fcn.1002e960
mov dword [0x1004a130], eax
mov dword [0x1004a134], edx
cmp dword [0x1004a148], 0
jne 0x1000bd7b
mov dword [ebp - 0x1b0], 1
jmp 0x1000bd85
mov dword [ebp - 0x1b0], 0
movzx edx, word [0x1004a150]
add edx, dword [ebp - 0x30]
or edx, dword [ebp - 0x1b0]
xor eax, eax
mov dword [0x1004a0e8], edx
mov dword [0x1004a0ec], eax
mov ecx, dword [ebp - 0xa4]
add ecx, 0x7bf0
mov dword [ebp - 0x6ec], ecx
movzx edx, word [ebp - 0xc]
cmp dword [ebp - 0x5c], edx
ja 0x1000be5e
movzx eax, word [ebp - 0xc]
cdq
mov ecx, dword [0x1004a188]
mov esi, dword [0x1004a18c]
mov dword [ebp - 0x5d0], eax
mov dword [ebp - 0x5cc], edx
mov dword [ebp - 0x5d8], ecx
mov dword [ebp - 0x5d4], esi
mov edx, dword [ebp - 0x5cc]
cmp edx, dword [ebp - 0x5d4]
ja 0x1000be14
jb 0x1000be08
mov eax, dword [ebp - 0x5d0]
cmp eax, dword [ebp - 0x5d8]
ja 0x1000be14
mov dword [ebp - 0x1b4], 1
jmp 0x1000be1e
mov dword [ebp - 0x1b4], 0
movzx ecx, word [ebp - 0xc]
cmp ecx, 0x4a
jg 0x1000be33
mov dword [ebp - 0x1b8], 1
jmp 0x1000be3d
mov dword [ebp - 0x1b8], 0
mov edx, dword [ebp - 0x1b4]
cmp edx, dword [ebp - 0x1b8]
jge 0x1000be5e
movsx eax, byte [0x1004a03e]
imul ecx, eax, 0x21c6
mov dword [0x1004a0c8], ecx
mov edx, dword [ebp - 0xa4]
add edx, 0xde51
mov dword [ebp - 0x358], edx
movzx ax, byte [ebp - 0xd]
movzx ecx, ax
push ecx
push 0
movsx dx, byte [0x1004a03f]
movzx eax, dx
push eax
push 0
movzx ecx, word [0x1004a110]
push ecx
movzx edx, word [ebp - 0x30]
push edx
movzx eax, word [ebp - 0x4c]
push eax
call fcn.10024c40
add esp, 0x1c
mov byte [0x1004a056], al
movzx ecx, byte [0x1004a056]
test ecx, ecx
jne 0x1000bebf
mov dword [ebp - 0x1bc], 1
jmp 0x1000bec9
mov dword [ebp - 0x1bc], 0
movzx edx, byte [0x1004a056]
cmp edx, 0x64
jne 0x1000bee1
mov dword [ebp - 0x1c0], 1
jmp 0x1000beeb
mov dword [ebp - 0x1c0], 0
mov eax, dword [ebp - 0x1bc]
cmp eax, dword [ebp - 0x1c0]
je 0x1000befb
jmp 0x1000bf3c
cmp dword [0x1004a178], 0
jne 0x1000bf21
movzx ecx, byte [ebp - 5]
not ecx
test ecx, ecx
jne 0x1000bf21
mov edx, dword [ebp - 0x2c]
or edx, dword [ebp - 0x28]
je 0x1000bf3c
movsx eax, byte [str.address_family_not]
test eax, eax
je 0x1000bf3c
mov ecx, dword [0x1004a188]
mov edx, dword [0x1004a18c]
mov dword [ebp - 0x6f0], edx
sub ecx, 0x1ae7c77d
mov byte [ebp - 5], cl
xor eax, eax
mov dword [0x1004a0d8], 3
mov dword [0x1004a0dc], eax
cmp dword [0x1004a148], 0
jne 0x1000bf6a
xor ecx, ecx
mov dword [ebp - 0x304], 1
mov dword [ebp - 0x300], ecx
jmp 0x1000bf75
xorps xmm0, xmm0
movlpd qword [ebp - 0x304], xmm0
mov edx, dword [ebp - 0x304]
mov eax, dword [ebp - 0x300]
mov dword [0x1004a170], edx
mov dword [0x1004a174], eax
mov ecx, dword [ebp - 0x50]
mov edx, 2
shl edx, 6
mov word [edx + 0x1007e000], cx
mov eax, dword [0x1004a0d8]
mov ecx, dword [0x1004a0dc]
mov dword [ebp - 0xc4], eax
mov dword [ebp - 0xc0], ecx
cmp dword [ebp - 0xc0], 0
jl 0x1000c08d
jg 0x1000bfd1
cmp dword [ebp - 0xc4], 0
jb 0x1000c08d
cmp dword [ebp - 0xc0], 0
jg 0x1000c08d
jl 0x1000bfed
cmp dword [ebp - 0xc4], 3
ja 0x1000c08d
mov edx, dword [ebp - 0xc4]
mov dword [ebp - 0x758], edx
mov eax, dword [ebp - 0x758]
jmp dword [eax*4 + 0x1000e650]
mov eax, dword [ebp - 0x354]
sub eax, dword [ebp - 0x358]
mov ecx, 0xa199
sub ecx, eax
sub ecx, 0x15347
mov dword [ebp - 0x494], ecx
movsx edx, byte [ebp - 6]
push edx
call dword [sym.imp.KERNEL32.dll_SetLastError]
movsx eax, word [ebp - 0x14]
test eax, eax
jle 0x1000c0cb
mov dword [ebp - 0x1c4], 1
jmp 0x1000c0d5
mov dword [ebp - 0x1c4], 0
movsx ecx, word [ebp - 0x14]
cmp ecx, 3
jle 0x1000c0ea
mov dword [ebp - 0x1c8], 1
jmp 0x1000c0f4
mov dword [ebp - 0x1c8], 0
mov edx, dword [ebp - 0x1c4]
cmp edx, dword [ebp - 0x1c8]
jge 0x1000c1d9
mov ecx, dword [0x1004a130]
mov esi, dword [0x1004a134]
movsx eax, byte [ebp - 2]
cdq
mov dword [ebp - 0x5e0], ecx
mov dword [ebp - 0x5dc], esi
mov dword [ebp - 0x5e8], eax
mov dword [ebp - 0x5e4], edx
mov edx, dword [ebp - 0x5dc]
cmp edx, dword [ebp - 0x5e4]
jb 0x1000c1a8
ja 0x1000c14d
mov eax, dword [ebp - 0x5e0]
cmp eax, dword [ebp - 0x5e8]
jbe 0x1000c1a8
movzx ecx, byte [0x1004a0bc]
test ecx, ecx
jne 0x1000c164
mov dword [ebp - 0x1cc], 1
jmp 0x1000c16e
mov dword [ebp - 0x1cc], 0
mov edx, dword [0x1004a0c8]
sub edx, dword [ebp - 0x1cc]
mov eax, dword [0x1004a190]
sub eax, edx
mov word [0x1004a124], ax
mov ecx, dword [0x1004a130]
mov edx, dword [0x1004a134]
mov dword [ebp - 0x6f8], edx
sub ecx, 0xcc
mov word [0x1004a150], cx
jmp 0x1000c1d7
movzx eax, byte [ebp - 3]
add eax, 0x7f
cdq
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], edx
movsx eax, word [ebp - 0x14]
cdq
mov ecx, dword [0x1004a160]
mov esi, dword [0x1004a164]
add ecx, eax
adc esi, edx
mov dword [0x1004a160], ecx
mov dword [0x1004a164], esi
jmp 0x1000c23d
movzx edx, word [ebp - 0xc]
test edx, edx
jne 0x1000c1ed
mov dword [ebp - 0x1d0], 1
jmp 0x1000c1f7
mov dword [ebp - 0x1d0], 0
movsx eax, byte [ebp - 2]
cmp eax, dword [ebp - 0x1d0]
jne 0x1000c23d
movsx eax, word [0x1004a100]
cdq
add eax, dword [str.J64_]
adc edx, dword [0x1004a13c]
mov dword [str.J64_], eax
mov dword [0x1004a13c], edx
mov ecx, dword [0x1004a0d8]
mov edx, dword [0x1004a0dc]
sub ecx, 0xdb84
sbb edx, 0
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x34], edx
mov eax, dword [0x1004ac78]
mov dword [ebp - 0x90], eax
cmp dword [0x1004a15c], 0
je 0x1000c253
jmp 0x1000c259
mov cl, byte [ebp - 1]
mov byte [ebp - 3], cl
mov edx, dword [ebp - 0x90]
add edx, 0xdc1d
mov dword [ebp - 0x35c], edx
mov eax, dword [0x1004a180]
mov ecx, dword [0x1004a184]
mov edx, dword [0x1004a0c0]
mov esi, dword [0x1004a0c4]
mov dword [ebp - 0x5f0], eax
mov dword [ebp - 0x5ec], ecx
mov dword [ebp - 0x5f8], edx
mov dword [ebp - 0x5f4], esi
mov eax, dword [ebp - 0x5ec]
cmp eax, dword [ebp - 0x5f4]
jl 0x1000c484
jg 0x1000c2c0
mov ecx, dword [ebp - 0x5f0]
cmp ecx, dword [ebp - 0x5f8]
jbe 0x1000c484
push 0
push 0x1003b728
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
mov byte [0x1004a0ba], al
movzx edx, byte [0x1004a0ba]
test edx, edx
jl 0x1000c2eb
mov dword [ebp - 0x1d4], 1
jmp 0x1000c2f5
mov dword [ebp - 0x1d4], 0
movzx eax, byte [0x1004a0ba]
cmp eax, 0x36
jl 0x1000c30d
mov dword [ebp - 0x1d8], 1
jmp 0x1000c317
mov dword [ebp - 0x1d8], 0
mov ecx, dword [ebp - 0x1d4]
cmp ecx, dword [ebp - 0x1d8]
jl 0x1000c403
push 0
push 0
call fcn.10024090
add esp, 8
mov byte [ebp - 0xd], al
movzx edx, byte [ebp - 0xd]
test edx, edx
je 0x1000c39f
mov eax, dword [0x1004a0ec]
cmp eax, dword [0x1004a174]
jb 0x1000c39d
ja 0x1000c35d
mov ecx, dword [0x1004a0e8]
cmp ecx, dword [0x1004a170]
jbe 0x1000c39d
cmp dword [0x1004a15c], 0
je 0x1000c372
movzx edx, byte [ebp - 1]
mov dword [ebp - 0x1dc], edx
jmp 0x1000c37d
mov eax, dword [0x1004a0c8]
mov dword [ebp - 0x1dc], eax
mov ecx, dword [ebp - 0x1dc]
xor edx, edx
mov dword [0x1004a0c0], ecx
mov dword [0x1004a0c4], edx
movsx eax, word [ebp - 0x14]
add eax, 0xce
mov dword [ebp - 0x44], eax
jmp 0x1000c3fe
movzx eax, byte [0x1004a06b]
cdq
mov ecx, eax
add ecx, 0x168b37cd
mov eax, dword [0x1004a110]
cdq
or eax, ecx
mov dword [0x1004a110], eax
movzx eax, word [0x1004a0cc]
cdq
mov ecx, dword [0x1004a160]
mov esi, dword [0x1004a164]
push edx
push eax
push esi
push ecx
call fcn.1002e960
mov ecx, eax
mov esi, edx
movzx eax, word [0x1004a150]
not eax
xor eax, dword [ebp - 0x50]
cdq
add ecx, eax
adc esi, edx
not ecx
not esi
mov dword [0x1004a0c0], ecx
mov dword [0x1004a0c4], esi
jmp 0x1000c484
mov edx, dword [0x1004a188]
mov eax, dword [0x1004a18c]
mov dword [ebp - 0x600], edx
mov dword [ebp - 0x5fc], eax
mov ecx, dword [ebp - 0x600]
or ecx, dword [ebp - 0x5fc]
je 0x1000c43a
movzx edx, word [0x1004a124]
add edx, 0x3ccf5605
mov byte [ebp - 0xd], dl
jmp 0x1000c484
movsx eax, byte [ebp - 6]
not eax
test eax, eax
jne 0x1000c44c
movzx ecx, word [ebp - 0x18]
test ecx, ecx
je 0x1000c452
mov byte [ebp - 4], 0x71
jmp 0x1000c484
movzx edx, byte [0x1004a0bb]
not edx
test edx, edx
je 0x1000c484
movzx eax, word [ebp - 0x1c]
cdq
mov ecx, dword [0x1004a0e0]
mov esi, dword [0x1004a0e4]
push edx
push eax
push esi
push ecx
call fcn.1002e960
mov dword [0x1004a0e0], eax
mov dword [0x1004a0e4], edx
mov edx, dword [ebp - 0x90]
add edx, 0xc935
mov dword [ebp - 0x6fc], edx
mov eax, dword [0x1004a180]
mov ecx, dword [0x1004a184]
mov dword [ebp - 0x700], ecx
add eax, 0xd7688c46
mov dword [ebp - 0x50], eax
mov dl, byte [0x1004a178]
mov byte [0x1004a017], dl
mov eax, dword [ebp - 0x90]
add eax, 0x61ce
mov dword [ebp - 0x360], eax
mov eax, dword [0x1004a15c]
add eax, 0xea77
movsx ecx, word [0x1004a120]
imul eax, ecx
cdq
mov ecx, eax
mov esi, edx
movsx edx, word [0x1004a100]
imul eax, edx, 0
cdq
mov edi, dword [0x1004a160]
mov ebx, dword [0x1004a164]
add edi, dword [0x1004a108]
adc ebx, dword [0x1004a10c]
not edi
not ebx
add eax, edi
adc edx, ebx
sub ecx, eax
sbb esi, edx
mov dword [str.J64_], ecx
mov dword [0x1004a13c], esi
movzx eax, byte [ebp - 3]
sub eax, 0xd3
mov dword [0x1004a154], eax
movsx ecx, word [0x1004a100]
cmp dword [0x1004a15c], ecx
jl 0x1000c549
mov dword [ebp - 0x1e0], 1
jmp 0x1000c553
mov dword [ebp - 0x1e0], 0
cmp dword [0x1004a15c], 0x49
jl 0x1000c568
mov dword [ebp - 0x1e4], 1
jmp 0x1000c572
mov dword [ebp - 0x1e4], 0
mov edx, dword [ebp - 0x1e0]
cmp edx, dword [ebp - 0x1e4]
jne 0x1000c59e
mov dword [0x1004a148], 0x74bc
mov eax, dword [0x1004a110]
cdq
sub eax, dword [0x1004a108]
mov word [0x1004a100], ax
jmp 0x1000c5be
movsx eax, word [0x1004a120]
test eax, eax
je 0x1000c5be
movzx eax, byte [ebp - 3]
cdq
mov ecx, dword [ebp - 0x2c]
sub ecx, eax
mov eax, dword [ebp - 0x28]
sbb eax, edx
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x28], eax
mov ecx, dword [ebp - 0x35c]
sub ecx, dword [ebp - 0x360]
or ecx, 0x8a7a
xor ecx, 0xfb7b
mov dword [ebp - 0x4a4], ecx
mov edx, 0x61f9
test edx, edx
je 0x1000c5fc
movzx eax, byte [0x1004a06b]
test eax, eax
je 0x1000c5fc
mov dword [ebp - 0x1f0], 1
jmp 0x1000c606
mov dword [ebp - 0x1f0], 0
cmp dword [ebp - 0x24], 0
je 0x1000c63e
mov ecx, dword [0x1004a168]
mov edx, dword [0x1004a16c]
mov dword [ebp - 0x608], ecx
mov dword [ebp - 0x604], edx
mov eax, dword [ebp - 0x608]
or eax, dword [ebp - 0x604]
je 0x1000c63e
mov dword [ebp - 0x1e8], 1
jmp 0x1000c648
mov dword [ebp - 0x1e8], 0
movsx ecx, byte [ebp - 2]
test ecx, ecx
je 0x1000c669
mov edx, 0x4be35200
or edx, 0xfffa9450
je 0x1000c669
mov dword [ebp - 0x1ec], 1
jmp 0x1000c673
mov dword [ebp - 0x1ec], 0
mov eax, dword [ebp - 0x1e8]
cmp eax, dword [ebp - 0x1ec]
jle 0x1000c68d
mov dword [ebp - 0x1f4], 1
jmp 0x1000c697
mov dword [ebp - 0x1f4], 0
mov ecx, dword [ebp - 0x1f0]
cmp ecx, dword [ebp - 0x1f4]
jle 0x1000c6b1
mov dword [ebp - 0x1f8], 1
jmp 0x1000c6bb
mov dword [ebp - 0x1f8], 0
mov edx, dword [ebp - 0x1f8]
not edx
test edx, edx
je 0x1000c6dd
mov eax, 1
imul ecx, eax, 0x5987
mov dl, byte [ebp - 0x14]
mov byte [ecx + 0x100700e8], dl
jmp 0x1000c706
mov eax, 0xe85c
test eax, eax
je 0x1000c706
movzx eax, word [0x1004a124]
cdq
mov ecx, eax
sub ecx, dword [str.J64_]
movzx eax, word [0x1004a124]
cdq
sub eax, ecx
mov word [0x1004a124], ax
mov edx, dword [0x1004ac78]
mov dword [ebp - 0x94], edx
mov eax, dword [ebp - 0x94]
add eax, 0x74
mov dword [ebp - 0x98], eax
movzx ecx, word [ebp - 0x18]
cmp ecx, dword [ebp - 0x50]
je 0x1000c72f
jmp 0x1000c7c0
push 0
push 0x862f972b
mov edx, dword [0x1004a0ec]
push edx
mov eax, dword [0x1004a0e8]
push eax
call fcn.1002e960
mov dword [ebp - 0x610], eax
mov dword [ebp - 0x60c], edx
mov ecx, dword [ebp - 0x610]
or ecx, dword [ebp - 0x60c]
jne 0x1000c7c0
movsx eax, byte [ebp - 2]
add eax, dword [0x1004a128]
sub eax, dword [0x1004a144]
cdq
mov esi, eax
mov ecx, dword [0x1004a188]
mov edi, dword [0x1004a18c]
mov edx, dword [0x1004a16c]
add ecx, dword [0x1004a168]
adc edi, edx
movsx eax, byte [ebp - 6]
movzx edx, byte [ebp - 5]
sub eax, edx
not eax
cdq
push edx
push eax
push edi
push ecx
call fcn.1002e960
xor esi, eax
mov dword [ebp - 0x5c], esi
mov eax, 4
shl eax, 5
movsx ecx, word [ebp - 0x14]
add ecx, dword [eax + 0x101913d0]
mov word [ebp - 0x14], cx
mov edx, dword [ebp - 0x94]
add edx, 0x94
mov dword [ebp - 0x704], edx
mov byte [0x1004a03f], 0x68
mov eax, dword [ebp - 0x94]
add eax, 0xf0
mov dword [ebp - 0x4a0], eax
push 0
push 0x1003b734
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
mov dword [0x1004a178], eax
mov dword [0x1004a104], 0x153f8d4
movzx ecx, byte [ebp - 1]
add ecx, 1
cmp dword [0x1004a104], ecx
jne 0x1000c8c2
mov dword [ebp - 0x44], 0x35ac0a29
movzx edx, word [0x1004a150]
cmp edx, 1
jne 0x1000c8c2
jmp 0x1000c8c2
mov dword [0x1004a104], 0x153f8d4
mov eax, dword [0x1004a118]
sub eax, 0x204c
mov ecx, dword [0x1004a11c]
sbb ecx, 0
mov dword [str.J64_], eax
mov dword [0x1004a13c], ecx
mov edx, dword [0x1004ac78]
mov dword [0x1004a190], edx
push str.gdi32
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov byte [ebp - 3], al
movzx eax, byte [ebp - 3]
test eax, eax
jne 0x1000c918
mov dword [ebp - 0x200], 1
jmp 0x1000c922
mov dword [ebp - 0x200], 0
movzx ecx, byte [ebp - 3]
cmp ecx, 0x60
jne 0x1000c937
mov dword [ebp - 0x204], 1
jmp 0x1000c941
mov dword [ebp - 0x204], 0
mov edx, dword [ebp - 0x200]
cmp edx, dword [ebp - 0x204]
jle 0x1000c963
push 0
push 0
push 0x1003b748
call dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableA]
mov dword [ebp - 0x5c], eax
jmp 0x1000c98f
cmp dword [0x1004a110], 0
je 0x1000c98f
movsx eax, byte [ebp - 2]
imul ecx, eax, 0xd59bdfc5
mov byte [0x1004a03e], cl
movsx edx, byte [0x1004a03f]
add edx, 0x1c
movzx eax, byte [ebp - 3]
sub eax, edx
mov byte [ebp - 3], al
mov ecx, dword [ebp - 0x98]
add ecx, dword [ebp - 0x4a0]
mov edx, dword [ebp - 0x98]
add edx, dword [ebp - 0x98]
or ecx, edx
add ecx, 0xa0
mov dword [ebp - 0x4a8], ecx
mov eax, dword [ebp - 0x48]
push eax
call fcn.1000f620
add esp, 4
test eax, eax
jne 0x1000cdc3
push 0x1003b750
mov ecx, dword [0x1004a110]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x708], eax
mov edx, dword [0x1004a140]
add edx, dword [ebp - 0x44]
je 0x1000cb21
mov eax, dword [ebp - 0x24]
xor ecx, ecx
mov dword [ebp - 0x620], eax
mov dword [ebp - 0x61c], ecx
mov edx, dword [ebp - 0x61c]
cmp edx, dword [ebp - 0x54]
jl 0x1000ca3b
jg 0x1000ca19
mov eax, dword [ebp - 0x620]
cmp eax, dword [ebp - 0x58]
jbe 0x1000ca3b
movzx ecx, byte [0x1004a0bc]
mov edx, dword [ebp - 0x30]
lea eax, [ecx + edx - 0xe1cb]
mov byte [0x1004a0bc], al
movsx ecx, byte [ebp - 2]
mov dword [ebp - 0x50], ecx
jmp 0x1000cb1f
cmp dword [ebp - 0x50], 0
jne 0x1000ca66
mov edx, dword [0x1004a0f8]
mov eax, dword [0x1004a0fc]
mov dword [ebp - 0x628], edx
mov dword [ebp - 0x624], eax
mov ecx, dword [ebp - 0x628]
or ecx, dword [ebp - 0x624]
je 0x1000cacd
movzx edx, byte [0x1004a056]
test edx, edx
jne 0x1000ca7d
mov dword [ebp - 0x208], 1
jmp 0x1000ca87
mov dword [ebp - 0x208], 0
mov eax, dword [0x1004a140]
not eax
cdq
add eax, dword [0x1004a108]
adc edx, dword [0x1004a10c]
xor ecx, ecx
mov esi, dword [ebp - 0x38]
mov edi, dword [ebp - 0x34]
add esi, dword [0x1004a154]
adc edi, ecx
push edi
push esi
push edx
push eax
call fcn.1002e960
mov edx, dword [ebp - 0x208]
add edx, dword [ebp - 0x24]
add edx, dword [0x1004a0e8]
xor eax, edx
mov word [0x1004a124], ax
jmp 0x1000cb1f
movzx eax, word [ebp - 0xc]
test eax, eax
jne 0x1000caea
cmp dword [0x1004a104], 0
jne 0x1000caea
mov dword [ebp - 0x20c], 0
jmp 0x1000caf4
mov dword [ebp - 0x20c], 1
movzx ecx, word [ebp - 0x1c]
cmp dword [ebp - 0x20c], ecx
jge 0x1000cb1f
mov edx, dword [ebp - 0x4c]
add edx, 0x86
mov word [ebp - 0xc], dx
movzx eax, word [0x1004a0cc]
sub eax, 0x2a6a
mov word [0x1004a150], ax
jmp 0x1000cb57
cmp dword [ebp - 0x24], 0
je 0x1000cb57
mov ecx, dword [0x1004a160]
mov edx, dword [0x1004a164]
push 0
push 0xd170
push edx
push ecx
call fcn.1002e960
mov word [0x1004a0f0], ax
movzx eax, byte [ebp - 5]
sub eax, dword [ebp - 0x24]
movzx ecx, byte [ebp - 5]
add ecx, eax
mov byte [ebp - 5], cl
mov edx, dword [0x1004ac78]
mov dword [ebp - 0x9c], edx
mov eax, dword [0x1004a0f8]
mov ecx, dword [0x1004a0fc]
mov dword [ebp - 0x630], eax
mov dword [ebp - 0x62c], ecx
mov edx, dword [ebp - 0x630]
or edx, dword [ebp - 0x62c]
je 0x1000cb93
mov ax, word [ebp - 0x1c]
mov byte [0x1004a0bb], al
jmp 0x1000cbaf
movsx eax, byte [0x1004a03e]
cdq
mov ecx, eax
sub ecx, dword [ebp - 0x40]
movsx eax, byte [0x1004a03e]
cdq
add eax, ecx
mov byte [0x1004a03e], al
mov edx, dword [ebp - 0x9c]
add edx, 0x203
mov dword [ebp - 0x49c], edx
mov ecx, dword [0x1004a168]
mov esi, dword [0x1004a16c]
movzx eax, byte [ebp - 1]
cdq
mov dword [ebp - 0x638], ecx
mov dword [ebp - 0x634], esi
mov dword [ebp - 0x640], eax
mov dword [ebp - 0x63c], edx
mov edx, dword [ebp - 0x634]
cmp edx, dword [ebp - 0x63c]
jl 0x1000cc14
jg 0x1000cc08
mov eax, dword [ebp - 0x638]
cmp eax, dword [ebp - 0x640]
jb 0x1000cc14
mov dword [ebp - 0x210], 1
jmp 0x1000cc1e
mov dword [ebp - 0x210], 0
mov ecx, dword [0x1004a168]
mov edx, dword [0x1004a16c]
mov dword [ebp - 0x648], ecx
mov dword [ebp - 0x644], edx
cmp dword [ebp - 0x644], 0
jl 0x1000cc56
jg 0x1000cc4a
cmp dword [ebp - 0x648], 0x50
jb 0x1000cc56
mov dword [ebp - 0x214], 1
jmp 0x1000cc60
mov dword [ebp - 0x214], 0
mov eax, dword [ebp - 0x210]
cmp eax, dword [ebp - 0x214]
jl 0x1000cc99
mov ecx, dword [0x1004a160]
mov edx, dword [0x1004a164]
push edx
push ecx
mov eax, dword [ebp - 0x54]
push eax
mov ecx, dword [ebp - 0x58]
push ecx
call fcn.1002e960
mov ecx, dword [ebp - 0x58]
sub ecx, eax
mov eax, dword [ebp - 0x54]
sbb eax, edx
mov dword [ebp - 0x58], ecx
mov dword [ebp - 0x54], eax
mov ecx, dword [ebp - 0x9c]
add ecx, 0x23
mov dword [ebp - 0x70c], ecx
mov edx, dword [ebp - 0x9c]
add edx, 0x129
mov dword [ebp - 0x710], edx
imul eax, dword [ebp - 0x49c], 0x3d0
cmp eax, 0x3bf
je 0x1000cdc1
push 0x8000
push 0
mov ecx, dword [ebp - 0x48]
push ecx
push 0
push 0
call fcn.10001170
add esp, 8
call eax
mov byte [0x1004a0bb], 0xe1
movzx edx, byte [0x1004a0bb]
movzx eax, word [ebp - 0xc]
add eax, 0xa8e1
cmp edx, eax
jne 0x1000cd72
movsx ecx, byte [0x1004a03f]
movzx edx, word [ebp - 0xc]
add edx, 0xb7aa
cmp ecx, edx
jne 0x1000cd72
mov dword [ebp - 0xa0], 2
jmp 0x1000cd33
mov eax, dword [ebp - 0xa0]
sub eax, 1
mov dword [ebp - 0xa0], eax
cmp dword [ebp - 0xa0], 0
jle 0x1000cd72
cmp dword [0x1004a174], 0
jg 0x1000cd61
jl 0x1000cd50
cmp dword [0x1004a170], 0
jae 0x1000cd61
movsx ecx, byte [ebp - 6]
sub ecx, 0x4d033e16
mov word [0x1004a100], cx
mov edx, dword [0x1004a190]
add edx, 1
mov dword [0x1004a190], edx
jmp 0x1000cd24
mov byte [0x1004a0bb], 0xe1
mov eax, dword [0x1004a110]
cdq
mov ecx, dword [0x1004a130]
mov esi, dword [0x1004a134]
sub ecx, eax
sbb esi, edx
mov edx, dword [0x1004a130]
mov eax, dword [0x1004a134]
add edx, ecx
adc eax, esi
mov dword [0x1004a130], edx
mov dword [0x1004a134], eax
movsx ecx, byte [str.address_family_not]
add ecx, dword [ebp - 0x24]
mov word [0x1004a100], cx
mov dword [ebp - 0x48], 0
jmp 0x1000cdcd
mov dword [0x1004a128], 0x42958715
mov eax, dword [0x1004a128]
cdq
mov ecx, eax
mov esi, edx
movzx eax, word [ebp - 0xc]
cdq
add eax, 0x42958715
adc edx, 0x42248
mov dword [ebp - 0x650], ecx
mov dword [ebp - 0x64c], esi
mov dword [ebp - 0x658], eax
mov dword [ebp - 0x654], edx
mov edx, dword [ebp - 0x650]
cmp edx, dword [ebp - 0x658]
jne 0x1000ced0
mov eax, dword [ebp - 0x64c]
cmp eax, dword [ebp - 0x654]
jne 0x1000ced0
movzx ecx, byte [0x1004a0bc]
movzx edx, word [ebp - 0x18]
add edx, 0x3e
cmp ecx, edx
jne 0x1000ced0
xor eax, eax
mov ecx, dword [0x1004a170]
sub ecx, dword [0x1004a154]
mov edx, dword [0x1004a174]
sbb edx, eax
add ecx, dword [0x1004a170]
adc edx, dword [0x1004a174]
mov dword [0x1004a170], ecx
mov dword [0x1004a174], edx
mov byte [0x1004a0bb], 0xd2
jmp 0x1000ced0
mov dword [0x1004a128], 0x42958715
mov dl, byte [0x1004a140]
mov byte [0x1004a06b], dl
mov byte [0x1004a056], 0x72
mov eax, dword [ebp - 0x48]
push eax
call fcn.10002810
add esp, 4
test eax, eax
jne 0x1000d66b
movzx ecx, byte [0x1004a0bc]
movsx edx, byte [0x1004a093]
cmp ecx, edx
jge 0x1000cfad
movsx eax, byte [str.address_family_not]
cmp dword [ebp - 0x44], eax
jl 0x1000cf2f
mov dword [ebp - 0x218], 1
jmp 0x1000cf39
mov dword [ebp - 0x218], 0
cmp dword [ebp - 0x44], 0x5a
jl 0x1000cf4b
mov dword [ebp - 0x21c], 1
jmp 0x1000cf55
mov dword [ebp - 0x21c], 0
mov ecx, dword [ebp - 0x218]
cmp ecx, dword [ebp - 0x21c]
jge 0x1000cf75
mov edx, dword [0x1004a128]
add edx, 0x59
mov byte [ebp - 4], dl
mov byte [ebp - 2], 1
jmp 0x1000cfab
movzx eax, word [ebp - 0xc]
movzx ecx, word [ebp - 0x18]
cmp eax, ecx
jne 0x1000cfab
movzx edx, word [ebp - 0x18]
mov eax, dword [ebp - 0x24]
sub eax, edx
mov ecx, dword [ebp - 0x24]
sub ecx, eax
mov dword [ebp - 0x24], ecx
movsx edx, word [ebp - 0x14]
mov eax, dword [0x1004a154]
add eax, edx
mov ecx, dword [0x1004a154]
sub ecx, eax
mov dword [0x1004a154], ecx
jmp 0x1000cfbd
movsx edx, word [ebp - 0x20]
mov eax, dword [0x1004a104]
add eax, edx
mov dword [0x1004a104], eax
mov dword [ebp - 0xbc], 0
jmp 0x1000cfd8
mov ecx, dword [ebp - 0xbc]
add ecx, 2
mov dword [ebp - 0xbc], ecx
cmp dword [ebp - 0xbc], 0x3c4
jge 0x1000d11e
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
movzx eax, byte [ebp - 1]
cdq
push edx
push eax
call fcn.100243a0
add esp, 0x28
mov dword [str.J64_], eax
mov dword [0x1004a13c], edx
mov edx, dword [0x1004a108]
or edx, dword [0x1004a10c]
jne 0x1000d08d
cmp dword [0x1004a154], 0
je 0x1000d08d
movsx eax, byte [str.address_family_not]
test eax, eax
je 0x1000d08d
mov ecx, dword [0x1004a0d0]
or ecx, dword [0x1004a0d4]
je 0x1000d06b
movsx edx, byte [ebp - 2]
test edx, edx
je 0x1000d06b
movsx eax, byte [0x1004a017]
mov dword [0x1004a144], eax
mov ecx, dword [0x1004a148]
add ecx, 0xbb
mov word [0x1004a0f0], cx
jmp 0x1000d08b
mov edx, dword [ebp - 0x58]
or edx, dword [ebp - 0x54]
je 0x1000d08b
movsx eax, byte [ebp - 2]
movzx ecx, byte [0x1004a0bb]
movsx edx, byte [ebp - 4]
xor ecx, edx
lea eax, [eax + ecx + 0x7e]
mov byte [ebp - 6], al
jmp 0x1000d10a
mov ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x2c]
not eax
mov esi, dword [ebp - 0x28]
not esi
xor eax, dword [0x1004a0f8]
xor esi, dword [0x1004a0fc]
mov dword [ebp - 0x660], ecx
mov dword [ebp - 0x65c], edx
mov dword [ebp - 0x668], eax
mov dword [ebp - 0x664], esi
mov ecx, dword [ebp - 0x65c]
cmp ecx, dword [ebp - 0x664]
jl 0x1000d10a
jg 0x1000d0df
mov edx, dword [ebp - 0x660]
cmp edx, dword [ebp - 0x668]
jb 0x1000d10a
mov eax, dword [0x1004a190]
mov dword [0x1004a158], eax
mov ecx, dword [0x1004a154]
xor edx, edx
mov eax, dword [0x1004a168]
mov esi, dword [0x1004a16c]
push esi
push eax
push edx
push ecx
call fcn.1002e960
mov dword [0x1004a154], eax
mov cl, byte [0x1004a06b]
add cl, 1
mov byte [0x1004a06b], cl
jmp 0x1000cfc9
mov edx, dword [0x1004ac78]
mov dword [ebp - 0xa8], edx
movzx eax, word [0x1004a0cc]
test eax, eax
je 0x1000d23c
mov ecx, dword [0x1004a0d0]
or ecx, dword [0x1004a0d4]
je 0x1000d196
mov edx, dword [0x1004a0d8]
mov eax, dword [0x1004a0dc]
mov dword [ebp - 0x714], eax
mov ecx, dword [ebp - 0x40]
sub ecx, edx
mov byte [0x1004a03e], cl
movzx edx, byte [0x1004a06b]
test edx, edx
je 0x1000d17b
mov eax, dword [0x1004a178]
mov dword [ebp - 0x220], eax
jmp 0x1000d185
movzx ecx, word [ebp - 0xc]
mov dword [ebp - 0x220], ecx
mov edx, dword [ebp - 0x220]
mov dword [0x1004a148], edx
jmp 0x1000d237
mov eax, dword [ebp - 0x50]
cmp dword [ebp - 0x44], eax
jl 0x1000d1b2
xor ecx, ecx
mov dword [ebp - 0x314], 1
mov dword [ebp - 0x310], ecx
jmp 0x1000d1bd
xorps xmm0, xmm0
movlpd qword [ebp - 0x314], xmm0
mov edx, dword [ebp - 0x310]
push edx
mov eax, dword [ebp - 0x314]
push eax
mov ecx, dword [0x1004a0ec]
push ecx
mov edx, dword [0x1004a0e8]
push edx
call fcn.1002e960
mov dword [ebp - 0x670], eax
mov dword [ebp - 0x66c], edx
mov eax, dword [ebp - 0x670]
or eax, dword [ebp - 0x66c]
je 0x1000d237
movzx ecx, word [ebp - 0x18]
movsx edx, byte [ebp - 6]
and ecx, edx
movzx eax, word [ebp - 0x18]
sub eax, ecx
mov word [ebp - 0x18], ax
movzx ecx, word [0x1004a124]
and ecx, dword [0x1004a104]
movsx edx, byte [0x1004a03e]
sub edx, 0x7d7
sub ecx, edx
not ecx
xor eax, eax
mov dword [0x1004a118], ecx
mov dword [0x1004a11c], eax
jmp 0x1000d3a6
mov ecx, dword [ebp - 0x2c]
or ecx, dword [ebp - 0x28]
je 0x1000d274
mov edx, dword [ebp - 0x40]
not edx
mov eax, dword [ebp - 0x3c]
not eax
mov dword [ebp - 0x374], edx
mov dword [ebp - 0x370], eax
mov ecx, dword [ebp - 0x374]
or ecx, dword [ebp - 0x370]
je 0x1000d274
mov dword [ebp - 0x224], 1
jmp 0x1000d27e
mov dword [ebp - 0x224], 0
mov edx, dword [0x1004a130]
mov eax, dword [0x1004a134]
mov dword [ebp - 0x37c], edx
mov dword [ebp - 0x378], eax
cmp dword [ebp - 0x37c], 0x9081dc7d
jne 0x1000d2b6
cmp dword [ebp - 0x378], 0
jne 0x1000d2b6
mov dword [ebp - 0xd0], 1
jmp 0x1000d2c0
mov dword [ebp - 0xd0], 0
mov ecx, dword [ebp - 0x224]
cmp ecx, dword [ebp - 0xd0]
jge 0x1000d358
movzx edx, word [0x1004a150]
test edx, edx
jne 0x1000d2f1
xor eax, eax
mov dword [ebp - 0x384], 1
mov dword [ebp - 0x380], eax
jmp 0x1000d2fc
xorps xmm0, xmm0
movlpd qword [ebp - 0x384], xmm0
mov ecx, dword [0x1004a0c0]
mov edx, dword [0x1004a0c4]
mov dword [ebp - 0x718], edx
mov eax, dword [ebp - 0x384]
sub eax, ecx
mov dword [ebp - 0x24], eax
movsx ecx, byte [ebp - 2]
test ecx, ecx
je 0x1000d33a
mov edx, dword [str.J64_]
mov eax, dword [0x1004a13c]
mov dword [ebp - 0x31c], edx
mov dword [ebp - 0x318], eax
jmp 0x1000d34a
mov eax, dword [ebp - 0x50]
cdq
mov dword [ebp - 0x31c], eax
mov dword [ebp - 0x318], edx
mov cl, byte [ebp - 0x31c]
mov byte [0x1004a093], cl
jmp 0x1000d3a6
movzx edx, byte [0x1004a0bb]
cmp edx, dword [0x1004a190]
je 0x1000d373
mov dword [ebp - 0x228], 1
jmp 0x1000d37d
mov dword [ebp - 0x228], 0
movzx eax, word [ebp - 0xc]
cmp eax, dword [ebp - 0x228]
jge 0x1000d3a6
movsx ecx, byte [ebp - 4]
mov edx, dword [ebp - 0x5c]
add edx, ecx
mov dword [ebp - 0x5c], edx
xor eax, eax
mov dword [0x1004a0c0], 0x7c42
mov dword [0x1004a0c4], eax
mov ecx, dword [ebp - 0xa8]
add ecx, 0x2c6
mov dword [ebp - 0x490], ecx
mov edx, dword [0x1004a154]
sub edx, 0x41
movzx eax, word [0x1004a124]
sub eax, edx
mov word [0x1004a124], ax
imul esi, dword [0x1004a154], 0x1d69
xor edi, edi
movzx eax, word [ebp - 0xc]
not eax
cdq
mov ecx, dword [0x1004a0ec]
push ecx
mov ecx, dword [0x1004a0e8]
push ecx
push edx
push eax
call fcn.1002e960
push edx
push eax
push edi
push esi
call fcn.1002e960
mov ecx, eax
movzx eax, byte [ebp - 5]
cdq
add ecx, eax
not ecx
mov word [ebp - 0x20], cx
mov edx, dword [ebp - 0xa8]
add edx, 0x52
mov dword [ebp - 0x22c], edx
mov eax, dword [ebp - 0x494]
add eax, dword [ebp - 0xa8]
mov dword [ebp - 0x498], eax
imul ecx, dword [ebp - 0x22c], 0x1d1
mov edx, dword [ebp - 0x490]
add edx, ecx
mov eax, dword [ebp - 0x22c]
or eax, dword [ebp - 0x498]
cmp edx, eax
je 0x1000d666
mov ecx, dword [0x1004a14c]
cmp dword [0x1004a14c], ecx
jae 0x1000d47e
push 0
push 0x1003b760
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
xor edx, edx
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x28], edx
jmp 0x1000d48a
movsx eax, byte [ebp - 2]
add eax, 0x809d
mov dword [ebp - 0x24], eax
mov ecx, 0x6b600
mov dword [0x1004a168], 0x1d8f0c12
mov dword [0x1004a16c], ecx
mov ecx, dword [0x1004a168]
mov esi, dword [0x1004a16c]
movzx eax, word [ebp - 0x18]
cdq
add eax, 0x1d8f0c12
adc edx, 0x6b600
mov dword [ebp - 0x38c], ecx
mov dword [ebp - 0x388], esi
mov dword [ebp - 0x394], eax
mov dword [ebp - 0x390], edx
mov edx, dword [ebp - 0x38c]
cmp edx, dword [ebp - 0x394]
jne 0x1000d61b
mov eax, dword [ebp - 0x388]
cmp eax, dword [ebp - 0x390]
jne 0x1000d61b
movzx eax, word [0x1004a150]
cdq
mov ecx, eax
mov esi, edx
movsx eax, byte [ebp - 2]
cdq
add eax, 0x195b77e0
adc edx, 0xd1277
mov dword [ebp - 0x39c], ecx
mov dword [ebp - 0x398], esi
mov dword [ebp - 0x3a4], eax
mov dword [ebp - 0x3a0], edx
mov edx, dword [ebp - 0x39c]
cmp edx, dword [ebp - 0x3a4]
jne 0x1000d61b
mov eax, dword [ebp - 0x398]
cmp eax, dword [ebp - 0x3a0]
jne 0x1000d61b
movzx ecx, byte [ebp - 3]
cmp dword [0x1004a128], ecx
jle 0x1000d5eb
cmp dword [0x1004a17c], 0
je 0x1000d5b3
mov eax, dword [ebp - 0x4c]
sub eax, 0x448b
cdq
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], edx
movsx eax, byte [0x1004a017]
cdq
mov ecx, dword [0x1004a0f8]
mov esi, dword [0x1004a0fc]
push edx
push eax
push esi
push ecx
call fcn.1002e960
mov ecx, eax
mov esi, edx
mov eax, dword [ebp - 0x50]
sub eax, 0x286d02cd
not eax
cdq
push edx
push eax
push esi
push ecx
call fcn.1002e960
mov dword [0x1004a154], eax
jmp 0x1000d5eb
cmp dword [ebp - 0x24], 0
je 0x1000d5eb
movzx eax, byte [0x1004a0bc]
cdq
mov ecx, dword [0x1004a0d4]
push ecx
mov ecx, dword [0x1004a0d0]
push ecx
push edx
push eax
call fcn.1002e960
mov byte [0x1004a0bc], al
movzx eax, byte [0x1004a06b]
cdq
and eax, 0xbc8ae8ba
mov byte [ebp - 1], al
jmp 0x1000d61b
mov ecx, 0x6b600
mov dword [0x1004a168], 0x1d8f0c12
mov dword [0x1004a16c], ecx
movsx edx, byte [0x1004a092]
movsx eax, byte [str.address_family_not]
add edx, eax
mov byte [0x1004a092], dl
push 0x8000
push 0
mov ecx, dword [ebp - 0x48]
push ecx
push 0
push 0
call fcn.10001170
add esp, 8
call eax
mov dword [ebp - 0x48], 0
jmp 0x1000e61a
movsx edx, word [ebp - 0x20]
mov eax, dword [0x1004a104]
sub eax, edx
mov ecx, dword [0x1004a104]
sub ecx, eax
mov dword [0x1004a104], ecx
mov byte [0x1004a093], 0xca
movsx edx, byte [0x1004a093]
movzx eax, word [ebp - 0x18]
add edx, eax
cmp dword [0x1004a178], edx
jne 0x1000d996
movzx ecx, byte [0x1004a056]
push ecx
push 0x42
push 0x2a
push 0
push 0xfffffffffffffffd
call fcn.100248f0
add esp, 0x14
movsx eax, al
cdq
mov dword [0x1004a160], eax
mov dword [0x1004a164], edx
mov edx, dword [0x1004a160]
mov eax, dword [0x1004a164]
mov dword [ebp - 0x3b4], edx
mov dword [ebp - 0x3b0], eax
cmp dword [ebp - 0x3b0], 0
ja 0x1000d702
jb 0x1000d6f6
cmp dword [ebp - 0x3b4], 0
ja 0x1000d702
mov dword [ebp - 0x230], 1
jmp 0x1000d70c
mov dword [ebp - 0x230], 0
mov ecx, dword [0x1004a160]
mov edx, dword [0x1004a164]
mov dword [ebp - 0x3bc], ecx
mov dword [ebp - 0x3b8], edx
cmp dword [ebp - 0x3b8], 0
ja 0x1000d744
jb 0x1000d738
cmp dword [ebp - 0x3bc], 9
ja 0x1000d744
mov dword [ebp - 0x234], 1
jmp 0x1000d74e
mov dword [ebp - 0x234], 0
mov eax, dword [ebp - 0x230]
cmp eax, dword [ebp - 0x234]
jle 0x1000d8ea
mov ecx, dword [0x1004a0e8]
or ecx, dword [0x1004a0ec]
jne 0x1000d77a
mov dword [ebp - 0x238], 1
jmp 0x1000d784
mov dword [ebp - 0x238], 0
movzx edx, byte [ebp - 3]
test edx, edx
jne 0x1000d798
mov dword [ebp - 0x23c], 1
jmp 0x1000d7a2
mov dword [ebp - 0x23c], 0
mov eax, 0xbdca
sub eax, dword [0x1004a14c]
imul eax, dword [ebp - 0x238]
movsx ecx, byte [0x1004a03f]
add eax, dword [ebp - 0x23c]
add ecx, eax
jne 0x1000d7d9
xor edx, edx
mov dword [ebp - 0x324], 1
mov dword [ebp - 0x320], edx
jmp 0x1000d7e4
xorps xmm0, xmm0
movlpd qword [ebp - 0x324], xmm0
mov eax, dword [ebp - 0x324]
mov ecx, dword [ebp - 0x320]
mov dword [0x1004a180], eax
mov dword [0x1004a184], ecx
movzx edx, byte [0x1004a0bc]
test edx, edx
jne 0x1000d81a
xor eax, eax
mov dword [ebp - 0x32c], 1
mov dword [ebp - 0x328], eax
jmp 0x1000d825
xorps xmm0, xmm0
movlpd qword [ebp - 0x32c], xmm0
mov ecx, dword [ebp - 0x32c]
sub ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x328]
sbb edx, dword [ebp - 0x3c]
mov dword [ebp - 0x3c4], ecx
mov dword [ebp - 0x3c0], edx
mov eax, dword [ebp - 0x3c4]
or eax, dword [ebp - 0x3c0]
jne 0x1000d865
xor ecx, ecx
mov dword [ebp - 0x2a4], 1
mov dword [ebp - 0x2a0], ecx
jmp 0x1000d870
xorps xmm0, xmm0
movlpd qword [ebp - 0x2a4], xmm0
mov eax, dword [ebp - 0x50]
not eax
cdq
push edx
push eax
mov edx, dword [ebp - 0x28]
push edx
mov eax, dword [ebp - 0x2c]
push eax
call fcn.1002e960
push edx
push eax
mov ecx, dword [ebp - 0x2a0]
push ecx
mov edx, dword [ebp - 0x2a4]
push edx
call fcn.1002e960
mov dword [ebp - 0x3cc], eax
mov dword [ebp - 0x3c8], edx
mov eax, dword [ebp - 0x3cc]
or eax, dword [ebp - 0x3c8]
jne 0x1000d8c8
xor ecx, ecx
mov dword [ebp - 0x2ac], 1
mov dword [ebp - 0x2a8], ecx
jmp 0x1000d8d3
xorps xmm0, xmm0
movlpd qword [ebp - 0x2ac], xmm0
mov edx, dword [ebp - 0x2ac]
mov eax, dword [ebp - 0x2a8]
mov dword [0x1004a168], edx
mov dword [0x1004a16c], eax
movzx eax, word [0x1004a150]
cdq
mov ecx, eax
mov esi, edx
movzx eax, word [ebp - 0x18]
cdq
add eax, 0x81c4c582
adc edx, 0x552bd
mov dword [ebp - 0x3d4], ecx
mov dword [ebp - 0x3d0], esi
mov dword [ebp - 0x3dc], eax
mov dword [ebp - 0x3d8], edx
mov edx, dword [ebp - 0x3d4]
cmp edx, dword [ebp - 0x3dc]
jne 0x1000d996
mov eax, dword [ebp - 0x3d0]
cmp eax, dword [ebp - 0x3d8]
jne 0x1000d996
movsx ecx, word [ebp - 0x20]
test ecx, ecx
je 0x1000d94d
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0x240], edx
jmp 0x1000d957
movzx eax, byte [ebp - 3]
mov dword [ebp - 0x240], eax
mov cl, byte [ebp - 0x240]
mov byte [0x1004a03e], cl
jmp 0x1000d684
movsx eax, byte [ebp - 6]
test eax, eax
jne 0x1000d9b2
xor ecx, ecx
mov dword [ebp - 0x2b4], 1
mov dword [ebp - 0x2b0], ecx
jmp 0x1000d9bd
xorps xmm0, xmm0
movlpd qword [ebp - 0x2b4], xmm0
mov edx, dword [ebp - 0x2b0]
cmp edx, dword [0x1004a0d4]
ja 0x1000d9e7
jb 0x1000d9db
mov eax, dword [ebp - 0x2b4]
cmp eax, dword [0x1004a0d0]
jae 0x1000d9e7
mov dword [ebp - 0x244], 1
jmp 0x1000d9f1
mov dword [ebp - 0x244], 0
movsx ecx, word [ebp - 0x14]
imul ecx, dword [ebp - 0x244]
test ecx, ecx
je 0x1000daca
movsx eax, byte [ebp - 4]
cdq
mov dword [ebp - 0x3e4], eax
mov dword [ebp - 0x3e0], edx
mov edx, dword [ebp - 0x28]
cmp edx, dword [ebp - 0x3e0]
jg 0x1000da6d
jl 0x1000da2d
mov eax, dword [ebp - 0x2c]
cmp eax, dword [ebp - 0x3e4]
ja 0x1000da6d
movsx ecx, byte [0x1004a092]
movzx edx, word [0x1004a150]
movzx eax, word [ebp - 0x1c]
add edx, eax
or ecx, edx
jne 0x1000da51
mov dword [ebp - 0x248], 1
jmp 0x1000da5b
mov dword [ebp - 0x248], 0
movzx ecx, byte [ebp - 1]
xor ecx, dword [ebp - 0x248]
mov dword [0x1004a110], ecx
jmp 0x1000dac8
mov edx, dword [0x1004a130]
mov eax, dword [0x1004a134]
not edx
not eax
mov dword [ebp - 0x3ec], edx
mov dword [ebp - 0x3e8], eax
cmp dword [ebp - 0x3e8], 0x1487b
jb 0x1000dac8
ja 0x1000daa2
cmp dword [ebp - 0x3ec], 0xbdd9212d
jbe 0x1000dac8
movsx eax, word [ebp - 0x14]
cdq
add eax, 0xfbaf2ae9
adc edx, 0x1d95d
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], edx
movsx ecx, byte [ebp - 4]
sub ecx, dword [ebp - 0x5c]
movsx edx, byte [ebp - 4]
add edx, ecx
mov byte [ebp - 4], dl
jmp 0x1000db01
movsx eax, word [ebp - 0x20]
cdq
mov ecx, dword [ebp - 0x38]
mov esi, dword [ebp - 0x34]
push edx
push eax
push esi
push ecx
call fcn.1002e960
mov ecx, dword [ebp - 0x38]
mov esi, dword [ebp - 0x34]
add ecx, eax
adc esi, edx
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x34], esi
mov edx, dword [0x1004ac78]
xor eax, eax
mov dword [0x1004a170], edx
mov dword [0x1004a174], eax
mov ecx, dword [0x1004ac78]
mov dword [ebp - 0xac], ecx
mov ecx, dword [ebp - 0x38]
mov esi, dword [ebp - 0x34]
mov eax, dword [ebp - 0x50]
cdq
mov dword [ebp - 0x3f4], ecx
mov dword [ebp - 0x3f0], esi
mov dword [ebp - 0x3fc], eax
mov dword [ebp - 0x3f8], edx
mov edx, dword [ebp - 0x3f4]
cmp edx, dword [ebp - 0x3fc]
jne 0x1000db57
mov eax, dword [ebp - 0x3f0]
cmp eax, dword [ebp - 0x3f8]
jne 0x1000db57
mov dword [ebp - 0x24c], 1
jmp 0x1000db61
mov dword [ebp - 0x24c], 0
mov ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 0x34]
mov dword [ebp - 0x404], ecx
mov dword [ebp - 0x400], edx
cmp dword [ebp - 0x404], 0x23
jne 0x1000db91
cmp dword [ebp - 0x400], 0
jne 0x1000db91
mov dword [ebp - 0x250], 1
jmp 0x1000db9b
mov dword [ebp - 0x250], 0
mov eax, dword [ebp - 0x24c]
cmp eax, dword [ebp - 0x250]
jne 0x1000dc02
push 0x27
mov ecx, dword [0x1004a130]
mov edx, dword [0x1004a134]
mov dword [ebp - 0x71c], edx
movzx eax, cl
push eax
movzx ecx, byte [ebp - 0xc]
push ecx
push 0x4d
movzx edx, byte [ebp - 0x20]
push edx
call fcn.100248f0
add esp, 0x14
mov byte [0x1004a092], al
movsx eax, byte [0x1004a092]
test eax, eax
je 0x1000dbfd
push str.comctl32
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
xor ecx, ecx
mov dword [0x1004a168], eax
mov dword [0x1004a16c], ecx
jmp 0x1000dd67
mov edx, dword [str.J64_]
not edx
mov eax, dword [0x1004a13c]
not eax
mov dword [ebp - 0x40c], edx
mov dword [ebp - 0x408], eax
mov ecx, dword [ebp - 0x40c]
or ecx, dword [ebp - 0x408]
je 0x1000dc73
movsx edx, byte [ebp - 4]
test edx, edx
jne 0x1000dc73
cmp dword [ebp - 0x24], 0
je 0x1000dc44
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x254], eax
jmp 0x1000dc4e
movsx ecx, byte [ebp - 2]
mov dword [ebp - 0x254], ecx
mov dx, word [ebp - 0x254]
mov word [0x1004a150], dx
mov eax, dword [0x1004ac78]
xor ecx, ecx
mov dword [0x1004a168], eax
mov dword [0x1004a16c], ecx
jmp 0x1000dd67
mov edx, dword [0x1004a0d0]
or edx, dword [0x1004a0d4]
jne 0x1000dc86
jmp 0x1000dd67
mov ecx, dword [0x1004a130]
mov esi, dword [0x1004a134]
movzx eax, byte [0x1004a0ba]
cdq
mov dword [ebp - 0x414], ecx
mov dword [ebp - 0x410], esi
mov dword [ebp - 0x41c], eax
mov dword [ebp - 0x418], edx
mov edx, dword [ebp - 0x410]
cmp edx, dword [ebp - 0x418]
jb 0x1000dcdc
ja 0x1000dcd0
mov eax, dword [ebp - 0x414]
cmp eax, dword [ebp - 0x41c]
jbe 0x1000dcdc
mov dword [ebp - 0x25c], 1
jmp 0x1000dce6
mov dword [ebp - 0x25c], 0
mov ecx, dword [ebp - 0x58]
not ecx
mov edx, dword [ebp - 0x54]
not edx
mov dword [ebp - 0x424], ecx
mov dword [ebp - 0x420], edx
mov eax, dword [ebp - 0x424]
or eax, dword [ebp - 0x420]
je 0x1000dd1e
mov ecx, dword [ebp - 0x58]
or ecx, dword [ebp - 0x54]
je 0x1000dd1e
mov dword [ebp - 0x258], 1
jmp 0x1000dd28
mov dword [ebp - 0x258], 0
mov edx, dword [ebp - 0x258]
not edx
cmp dword [ebp - 0x25c], edx
je 0x1000dd67
mov eax, dword [0x1004a108]
or eax, dword [0x1004a10c]
je 0x1000dd50
mov ecx, dword [ebp - 0x50]
mov dword [ebp - 0x260], ecx
jmp 0x1000dd5c
mov edx, dword [0x1004a0c8]
mov dword [ebp - 0x260], edx
mov al, byte [ebp - 0x260]
mov byte [0x1004a0bb], al
mov ecx, dword [ebp - 0xac]
add ecx, 0x1d1
mov dword [ebp - 0x364], ecx
movzx edx, byte [ebp - 3]
imul edx, dword [ebp - 0x30]
add edx, dword [ebp - 0x30]
mov dword [ebp - 0x30], edx
mov eax, dword [0x1004a0c0]
mov ecx, dword [0x1004a0c4]
mov dword [ebp - 0x720], ecx
add eax, 0xb41776af
mov word [0x1004a150], ax
mov edx, dword [ebp - 0x4a4]
add edx, dword [ebp - 0xac]
mov dword [ebp - 0xb0], edx
movsx eax, byte [0x1004a092]
cmp dword [ebp - 0x30], eax
jbe 0x1000ddcd
mov dword [ebp - 0x264], 1
jmp 0x1000ddd7
mov dword [ebp - 0x264], 0
cmp dword [ebp - 0x30], 0xd
jbe 0x1000dde9
mov dword [ebp - 0x268], 1
jmp 0x1000ddf3
mov dword [ebp - 0x268], 0
mov ecx, dword [ebp - 0x264]
cmp ecx, dword [ebp - 0x268]
jg 0x1000de1c
movsx edx, byte [ebp - 2]
movsx eax, word [0x1004a120]
add edx, eax
movsx ecx, byte [ebp - 2]
add ecx, edx
mov byte [ebp - 2], cl
jmp 0x1000df5e
movsx edx, word [ebp - 0x14]
test edx, edx
jne 0x1000de42
mov eax, dword [0x1004ac78]
xor ecx, ecx
mov dword [0x1004a0f8], eax
mov dword [0x1004a0fc], ecx
mov byte [str.address_family_not], 0x81
jmp 0x1000df5e
movzx eax, word [0x1004a0f0]
cdq
mov ecx, dword [0x1004a118]
not ecx
mov esi, dword [0x1004a11c]
not esi
mov dword [ebp - 0x42c], eax
mov dword [ebp - 0x428], edx
mov dword [ebp - 0x434], ecx
mov dword [ebp - 0x430], esi
mov edx, dword [ebp - 0x42c]
cmp edx, dword [ebp - 0x434]
jne 0x1000de8e
mov eax, dword [ebp - 0x428]
cmp eax, dword [ebp - 0x430]
je 0x1000de93
jmp 0x1000df5e
mov ecx, dword [0x1004a0e0]
mov edx, dword [0x1004a0e4]
mov dword [ebp - 0x43c], ecx
mov dword [ebp - 0x438], edx
mov eax, dword [ebp - 0x43c]
or eax, dword [ebp - 0x438]
je 0x1000def6
movzx eax, word [ebp - 0xc]
not eax
cdq
mov dword [ebp - 0x444], eax
mov dword [ebp - 0x440], edx
mov ecx, dword [0x1004a0ec]
cmp ecx, dword [ebp - 0x440]
jb 0x1000def6
ja 0x1000deea
mov edx, dword [0x1004a0e8]
cmp edx, dword [ebp - 0x444]
jb 0x1000def6
mov dword [ebp - 0x26c], 0
jmp 0x1000df00
mov dword [ebp - 0x26c], 1
mov eax, dword [ebp - 0x26c]
not eax
test eax, eax
je 0x1000df5e
mov ecx, dword [ebp - 0x34]
mov edx, dword [ebp - 0x2c]
sub edx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x28]
sbb eax, ecx
mov ecx, dword [ebp - 0x2c]
sub ecx, edx
mov edx, dword [ebp - 0x28]
sbb edx, eax
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x28], edx
cmp dword [0x1004a178], 0
jne 0x1000df47
xor eax, eax
mov dword [ebp - 0x44c], 1
mov dword [ebp - 0x448], eax
jmp 0x1000df52
xorps xmm0, xmm0
movlpd qword [ebp - 0x44c], xmm0
mov ecx, dword [ebp - 0x40]
sub ecx, dword [ebp - 0x44c]
mov byte [ebp - 5], cl
mov edx, dword [ebp - 0x4a8]
add edx, dword [ebp - 0xac]
mov dword [ebp - 0x724], edx
mov eax, dword [ebp - 0xb0]
add eax, 0x34f
mov ecx, dword [ebp - 0xb0]
sub ecx, dword [ebp - 0x364]
mov edx, 0x2d9
sub edx, dword [ebp - 0xb0]
add ecx, edx
cmp eax, ecx
je 0x1000e61a
push 1
call fcn.10024660
add esp, 4
mov word [ebp - 0xc], ax
movzx eax, word [ebp - 0xc]
test eax, eax
je 0x1000e136
mov eax, dword [ebp - 0x4c]
cdq
mov ecx, dword [0x1004a0e0]
mov esi, dword [0x1004a0e4]
mov dword [ebp - 0x454], eax
mov dword [ebp - 0x450], edx
mov dword [ebp - 0x530], ecx
mov dword [ebp - 0x52c], esi
mov edx, dword [ebp - 0x450]
cmp edx, dword [ebp - 0x52c]
ja 0x1000e008
jb 0x1000dffc
mov eax, dword [ebp - 0x454]
cmp eax, dword [ebp - 0x530]
ja 0x1000e008
mov dword [ebp - 0x270], 1
jmp 0x1000e012
mov dword [ebp - 0x270], 0
cmp dword [ebp - 0x4c], 0x36
jg 0x1000e024
mov dword [ebp - 0x274], 1
jmp 0x1000e02e
mov dword [ebp - 0x274], 0
mov ecx, dword [ebp - 0x270]
cmp ecx, dword [ebp - 0x274]
jl 0x1000e04f
movzx eax, byte [0x1004a0ba]
cdq
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], edx
jmp 0x1000e134
mov edx, dword [0x1004a188]
mov eax, dword [0x1004a18c]
mov dword [ebp - 0x45c], edx
mov dword [ebp - 0x458], eax
cmp dword [ebp - 0x458], 0xffffffff
ja 0x1000e089
jb 0x1000e07d
cmp dword [ebp - 0x45c], 0xffffd9b7
ja 0x1000e089
mov dword [ebp - 0x278], 1
jmp 0x1000e093
mov dword [ebp - 0x278], 0
mov ecx, dword [ebp - 0x5c]
xor edx, edx
mov eax, dword [ebp - 0x38]
mov esi, dword [ebp - 0x34]
not eax
not esi
mov dword [ebp - 0x464], ecx
mov dword [ebp - 0x460], edx
mov dword [ebp - 0x46c], eax
mov dword [ebp - 0x468], esi
mov ecx, dword [ebp - 0x460]
cmp ecx, dword [ebp - 0x468]
jg 0x1000e0e4
jl 0x1000e0d8
mov edx, dword [ebp - 0x464]
cmp edx, dword [ebp - 0x46c]
ja 0x1000e0e4
mov dword [ebp - 0x27c], 1
jmp 0x1000e0ee
mov dword [ebp - 0x27c], 0
mov eax, dword [ebp - 0x278]
cmp eax, dword [ebp - 0x27c]
je 0x1000e134
movzx ecx, byte [ebp - 1]
test ecx, ecx
jne 0x1000e118
xor edx, edx
mov dword [ebp - 0x474], 1
mov dword [ebp - 0x470], edx
jmp 0x1000e123
xorps xmm0, xmm0
movlpd qword [ebp - 0x474], xmm0
mov eax, dword [ebp - 0x40]
sub eax, dword [ebp - 0x474]
not eax
mov word [0x1004a120], ax
jmp 0x1000e16d
movzx ecx, byte [0x1004a0bc]
not ecx
test ecx, ecx
je 0x1000e16d
mov edx, dword [0x1004a160]
mov eax, dword [0x1004a164]
push 0
push 0x526b
push eax
push edx
call fcn.1002e960
mov byte [0x1004a017], al
mov ecx, dword [ebp - 0x30]
xor ecx, 0x314
mov dword [ebp - 0x4c], ecx
xor edx, edx
mov dword [0x1004a170], 0x21
mov dword [0x1004a174], edx
mov ecx, dword [0x1004a154]
xor esi, esi
movzx eax, word [ebp - 0xc]
cdq
add eax, 0x5bded292
adc edx, 0xeef86
mov dword [ebp - 0x47c], ecx
mov dword [ebp - 0x478], esi
mov dword [ebp - 0x484], eax
mov dword [ebp - 0x480], edx
mov edx, dword [ebp - 0x47c]
cmp edx, dword [ebp - 0x484]
jne 0x1000e318
mov eax, dword [ebp - 0x478]
cmp eax, dword [ebp - 0x480]
jne 0x1000e318
movzx ecx, word [ebp - 0xc]
add ecx, dword [0x1004a178]
cmp ecx, 1
jne 0x1000e318
mov dword [0x1004a144], 3
movsx eax, word [ebp - 0x14]
add eax, 0x4d2b62aa
cdq
mov dword [0x1004a0f8], eax
mov dword [0x1004a0fc], edx
mov edx, dword [0x1004a144]
mov dword [ebp - 0x280], edx
cmp dword [ebp - 0x280], 3
ja case.default.0x1000e224
mov eax, dword [ebp - 0x280]
jmp dword [eax*4 + 0x1000e660]
movzx eax, byte [ebp - 3]
cdq
sub eax, 0xb4170eaf
mov byte [0x1004a093], al
jmp case.default.0x1000e224
cmp dword [0x1004a0c8], 0
jne 0x1000e25c
mov ecx, dword [0x1004a0c8]
xor edx, edx
push 0x3ab93
push 0x6b2731ad
push edx
push ecx
call fcn.1002e960
mov ecx, eax
movzx eax, word [ebp - 0x18]
cdq
sub eax, ecx
mov word [ebp - 0x18], ax
jmp case.default.0x1000e224
mov edx, dword [ebp - 0x30]
sub edx, 0x9924
mov dword [ebp - 0x4c], edx
jmp 0x1000e16d
mov edx, dword [ebp - 0x284]
mov eax, dword [ebp - 0x368]
lea ecx, [edx + eax - 0x1a3]
imul edx, dword [ebp - 0x36c], 0x2ad
mov eax, dword [ebp - 0x284]
add eax, edx
cmp ecx, eax
je 0x1000e5fc
movzx ecx, word [0x1004a150]
xor ecx, dword [ebp - 0x44]
mov word [0x1004a150], cx
movzx edx, word [ebp - 0x8ae]
and edx, 0x2000
jne 0x1000e5fc
push 0
push 0
push 0x1003b774
call dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
mov word [ebp - 0xc], ax
movzx eax, word [ebp - 0xc]
test eax, eax
jg 0x1000e44d
movzx ecx, word [0x1004a150]
movzx edx, word [ebp - 0x18]
cmp ecx, edx
jl 0x1000e3a3
mov dword [ebp - 0x288], 1
jmp 0x1000e3ad
mov dword [ebp - 0x288], 0
movzx eax, word [0x1004a150]
cmp eax, 0x36
jl 0x1000e3c5
mov dword [ebp - 0x28c], 1
jmp 0x1000e3cf
mov dword [ebp - 0x28c], 0
mov ecx, dword [ebp - 0x288]
cmp ecx, dword [ebp - 0x28c]
je 0x1000e3eb
cmp dword [ebp - 0x24], 0
jne 0x1000e469
movsx ecx, byte [ebp - 6]
not ecx
test ecx, ecx
jne 0x1000e469
mov dword [ebp - 0x290], 0
jmp 0x1000e473
mov dword [ebp - 0x290], 1
movsx edx, byte [0x1004a092]
not edx
mov eax, dword [ebp - 0x290]
not eax
add edx, eax
not edx
test edx, edx
je 0x1000e4be
movzx ecx, word [ebp - 0x1c]
movsx edx, word [0x1004a100]
add ecx, edx
movzx eax, word [ebp - 0x1c]
sub eax, ecx
mov word [ebp - 0x1c], ax
mov ecx, dword [0x1004a180]
mov edx, dword [0x1004a184]
xor ecx, 0x98
xor edx, 0
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x34], edx
xor eax, eax
mov dword [0x1004a0e0], 0xb7aa
mov dword [0x1004a0e4], eax
movsx ecx, byte [0x1004a03e]
movsx edx, byte [ebp - 6]
add edx, 0xd76e
cmp ecx, edx
jne 0x1000e5f0
mov ecx, dword [ebp - 0x48]
push ecx
call fcn.100047d0
add esp, 4
mov eax, dword [ebp - 0x89c]
add eax, dword [ebp - 0x48]
push 0
push 1
push dword [ebp - 0x48]
call eax
push 0
push 0x1003b780
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
mov byte [0x1004a0bc], al
mov eax, dword [ebp - 0x48]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4