Function at 0x43207d
Capabilities:
Create thread

Disassembly:
push 0xc
mov eax, 0x468439
call fcn.00435814
mov edi, 0x483dc8
push edi
mov dword [ebp - 0x18], edi
call dword [sym.imp.KERNEL32.DLL_EnterCriticalSection]
mov esi, dword [ebp + 8]
xor ebx, ebx
mov dword [ebp - 4], ebx
cmp esi, ebx
jne 0x4320b2
push edi
call dword [sym.imp.KERNEL32.DLL_LeaveCriticalSection]
xor eax, eax
jmp 0x4327a3
push 0x485444
lea ecx, [ebp - 0x14]
call fcn.004061f3
mov eax, dword [esi]
lea ecx, [ebp - 0x10]
push ecx
mov ecx, esi
mov byte [ebp - 4], 1
call dword [eax + 0xc8]
push 0x46c7fc
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 2
call fcn.004061cf
test eax, eax
jne 0x4321e6
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x6c]
cmp eax, 0xfb
jne 0x432185
mov ecx, dword [0x485d0c]
push 0xf9
call fcn.004169bd
mov esi, eax
cmp esi, ebx
je 0x432149
mov eax, dword [esi]
push 0xe78a1e
mov ecx, esi
call dword [eax + 0x48]
push 0x470768
lea ecx, [ebp + 8]
call fcn.004076dd
mov eax, dword [esi]
lea ecx, [ebp + 8]
push ecx
mov ecx, esi
mov byte [ebp - 4], 3
call dword [eax + 0x34]
mov ecx, dword [ebp + 8]
add ecx, 0xfffffff0
mov byte [ebp - 4], 2
call fcn.00405c12
mov ecx, dword [0x485d0c]
push 0xf7
call fcn.004169bd
cmp eax, ebx
je 0x4321cb
push ebx
lea esi, [eax + 0x70]
mov eax, dword [0x485d0c]
mov eax, dword [eax + 4]
push 0x50
push 8
push 0x46cf58
mov ecx, esi
mov dword [esi + 0x10], eax
call fcn.0042754c
mov ecx, esi
call fcn.004097cc
jmp 0x4321cb
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x6c]
cmp eax, 0xfc
jne 0x4321cb
mov ecx, dword [0x485d0c]
push 0xfa
call fcn.004169bd
cmp eax, ebx
je 0x4321af
mov edx, dword [eax]
push ebx
mov ecx, eax
call dword [edx + 0x14]
mov ecx, dword [0x485d0c]
push 0xf8
call fcn.004169bd
cmp eax, ebx
je 0x4321cb
mov edx, dword [eax]
push ebx
mov ecx, eax
call dword [edx + 0x14]
mov ecx, dword [ebp - 0x10]
add ecx, 0xfffffff0
call fcn.00405c12
mov ecx, dword [ebp - 0x14]
add ecx, 0xfffffff0
call fcn.00405c12
jmp 0x4320a4
push 0x46c860
lea ecx, [ebp - 0x10]
call fcn.004061cf
test eax, eax
je 0x432363
mov eax, dword [ebp - 0x10]
push ecx
add eax, 0xfffffff0
mov dword [ebp + 8], esp
mov edi, esp
push eax
call fcn.00405e04
add eax, 0x10
pop ecx
mov dword [edi], eax
call fcn.00408cab
pop ecx
cmp eax, ebx
jne 0x432363
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x6c]
cmp eax, 0xfb
jne 0x43228c
mov ecx, dword [0x485d0c]
push 0xf9
call fcn.004169bd
mov esi, eax
cmp esi, ebx
je 0x432285
mov eax, dword [esi]
push 1
mov ecx, esi
call dword [eax + 0x14]
mov eax, dword [esi]
push 0xe78a1e
mov ecx, esi
call dword [eax + 0x48]
push 0x470750
lea ecx, [ebp + 8]
call fcn.004076dd
mov eax, dword [esi]
lea ecx, [ebp + 8]
push ecx
mov ecx, esi
mov byte [ebp - 4], 4
call dword [eax + 0x34]
mov ecx, dword [ebp + 8]
add ecx, 0xfffffff0
mov byte [ebp - 4], 2
call fcn.00405c12
push 0xf7
jmp 0x4322f9
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x6c]
cmp eax, 0xfc
jne 0x43233b
mov ecx, dword [0x485d0c]
push 0xfa
call fcn.004169bd
mov esi, eax
cmp esi, ebx
je 0x4322f4
mov eax, dword [esi]
push 1
mov ecx, esi
call dword [eax + 0x14]
mov eax, dword [esi]
push 0xe78a1e
mov ecx, esi
call dword [eax + 0x48]
push 0x470750
lea ecx, [ebp + 8]
call fcn.004076dd
mov eax, dword [esi]
lea ecx, [ebp + 8]
push ecx
mov ecx, esi
mov byte [ebp - 4], 5
call dword [eax + 0x34]
mov ecx, dword [ebp + 8]
add ecx, 0xfffffff0
mov byte [ebp - 4], 2
call fcn.00405c12
push 0xf8
mov ecx, dword [0x485d0c]
call fcn.004169bd
mov edi, eax
cmp edi, ebx
je 0x43233b
mov eax, dword [0x485d0c]
mov eax, dword [eax + 4]
push ebx
push 0x50
push 8
push 0x46cf58
lea ecx, [edi + 0x70]
mov dword [edi + 0x80], eax
call fcn.0042754c
lea ecx, [edi + 0x70]
call fcn.004097cc
mov eax, dword [edi]
push 1
mov ecx, edi
call dword [eax + 0x14]
mov ecx, dword [ebp - 0x10]
add ecx, 0xfffffff0
call fcn.00405c12
mov ecx, dword [ebp - 0x14]
add ecx, 0xfffffff0
call fcn.00405c12
push 0x483dc8
call dword [sym.imp.KERNEL32.DLL_LeaveCriticalSection]
mov eax, ebx
jmp 0x4327a3
push 0x46c860
lea ecx, [ebp - 0x10]
call fcn.004061cf
test eax, eax
jne 0x4324b7
mov eax, dword [esi]
mov edi, 0x49a753
push edi
mov ecx, esi
call dword [eax + 0x48]
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x6c]
cmp eax, 0xfb
jne 0x4323ec
mov ecx, dword [0x485d0c]
push 0xf9
call fcn.004169bd
mov esi, eax
cmp esi, ebx
je 0x4323e5
mov eax, dword [esi]
push 1
mov ecx, esi
call dword [eax + 0x14]
mov eax, dword [esi]
push edi
mov ecx, esi
call dword [eax + 0x48]
push 0x470744
lea ecx, [ebp + 8]
call fcn.004076dd
mov eax, dword [esi]
lea ecx, [ebp + 8]
push ecx
mov ecx, esi
mov byte [ebp - 4], 6
call dword [eax + 0x34]
mov ecx, dword [ebp + 8]
add ecx, 0xfffffff0
mov byte [ebp - 4], 2
call fcn.00405c12
push 0xf7
jmp 0x432455
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x6c]
cmp eax, 0xfc
jne 0x432497
mov ecx, dword [0x485d0c]
push 0xfa
call fcn.004169bd
mov esi, eax
cmp esi, ebx
je 0x432450
mov eax, dword [esi]
push 1
mov ecx, esi
call dword [eax + 0x14]
mov eax, dword [esi]
push edi
mov ecx, esi
call dword [eax + 0x48]
push 0x470744
lea ecx, [ebp + 8]
call fcn.004076dd
mov eax, dword [esi]
lea ecx, [ebp + 8]
push ecx
mov ecx, esi
mov byte [ebp - 4], 7
call dword [eax + 0x34]
mov ecx, dword [ebp + 8]
add ecx, 0xfffffff0
mov byte [ebp - 4], 2
call fcn.00405c12
push 0xf8
mov ecx, dword [0x485d0c]
call fcn.004169bd
mov edi, eax
cmp edi, ebx
je 0x432497
mov eax, dword [0x485d0c]
mov eax, dword [eax + 4]
push ebx
push 0x50
push 7
push str.IDB_DNS_STATUS_SAFE
lea ecx, [edi + 0x70]
mov dword [edi + 0x80], eax
call fcn.0042754c
lea ecx, [edi + 0x70]
call fcn.004097cc
mov eax, dword [edi]
push 1
mov ecx, edi
call dword [eax + 0x14]
mov ecx, dword [ebp - 0x10]
add ecx, 0xfffffff0
call fcn.00405c12
mov ecx, dword [ebp - 0x14]
add ecx, 0xfffffff0
call fcn.00405c12
push 0x483dc8
jmp 0x4320a5
push ebx
lea eax, [ebp - 0x14]
push eax
mov eax, dword [ebp - 0x10]
push ecx
add eax, 0xfffffff0
mov dword [ebp + 8], esp
mov edi, esp
push eax
call fcn.00405e04
add eax, 0x10
pop ecx
mov dword [edi], eax
mov ecx, dword [0x485d0c]
call fcn.00431039
cmp eax, ebx
jne 0x4325d1
mov eax, dword [esi]
push 0x2b3bc4
mov ecx, esi
call dword [eax + 0x48]
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x6c]
cmp eax, 0xfb
jne 0x43253e
mov ecx, dword [0x485d0c]
push 0xf9
call fcn.004169bd
mov esi, eax
cmp esi, ebx
je 0x432537
mov eax, dword [esi]
push 1
mov ecx, esi
call dword [eax + 0x14]
mov eax, dword [esi]
push 0xc43b2b
mov ecx, esi
call dword [eax + 0x48]
mov eax, dword [esi]
lea ecx, [ebp - 0x14]
push ecx
mov ecx, esi
call dword [eax + 0x34]
push 0xf7
jmp 0x432587
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x6c]
cmp eax, 0xfc
jne 0x4325c9
mov ecx, dword [0x485d0c]
push 0xfa
call fcn.004169bd
mov esi, eax
cmp esi, ebx
je 0x432582
mov eax, dword [esi]
push 1
mov ecx, esi
call dword [eax + 0x14]
mov eax, dword [esi]
push 0xc43b2b
mov ecx, esi
call dword [eax + 0x48]
mov eax, dword [esi]
lea ecx, [ebp - 0x14]
push ecx
mov ecx, esi
call dword [eax + 0x34]
push 0xf8
mov ecx, dword [0x485d0c]
call fcn.004169bd
mov edi, eax
cmp edi, ebx
je 0x4325c9
mov eax, dword [0x485d0c]
mov eax, dword [eax + 4]
push ebx
push 0x50
push 8
push str.IDB_DNS_STATUS_DANGER
lea ecx, [edi + 0x70]
mov dword [edi + 0x80], eax
call fcn.0042754c
lea ecx, [edi + 0x70]
call fcn.004097cc
mov eax, dword [edi]
push 1
mov ecx, edi
call dword [eax + 0x14]
xor ebx, ebx
inc ebx
jmp 0x43233b
lea eax, [ebp - 0x14]
push eax
mov eax, dword [ebp - 0x10]
push ecx
add eax, 0xfffffff0
mov dword [ebp + 8], esp
mov edi, esp
push eax
call fcn.00405e04
add eax, 0x10
pop ecx
mov dword [edi], eax
mov ecx, dword [0x485d0c]
call fcn.00431260
cmp eax, ebx
je 0x4326a4
mov eax, dword [ebp - 0x10]
mov edi, dword [eax - 0xc]
inc edi
xor ecx, ecx
push 2
pop edx
mov eax, edi
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.004376a2
push edi
push ebx
push eax
mov dword [ebp + 8], eax
call fcn.004374f0
mov eax, dword [ebp - 0x10]
add esp, 0x10
cmp dword [eax - 4], 1
jle 0x432642
push dword [eax - 0xc]
lea ecx, [ebp - 0x10]
call fcn.0040621b
mov eax, dword [ebp - 0x10]
push eax
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.DLL_lstrcpyW]
push ebx
push ebx
push dword [ebp + 8]
push 0x434d6e
push ebx
push ebx
call dword [sym.imp.KERNEL32.DLL_CreateThread]
push eax
call dword [sym.imp.KERNEL32.DLL_CloseHandle]
mov eax, dword [ebp - 0x10]
push ecx
add eax, 0xfffffff0
mov dword [ebp + 8], esp
mov edi, esp
push eax
call fcn.00405e04
add eax, 0x10
mov dword [edi], eax
pop ecx
lea eax, [ebp + 8]
push eax
call fcn.0040f486
pop ecx
pop ecx
push eax
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 8
call fcn.004073a1
mov ecx, dword [ebp + 8]
add ecx, 0xfffffff0
mov byte [ebp - 4], 2
call fcn.00405c12
mov eax, dword [esi]
mov edi, 0x49a753
push edi
mov ecx, esi
call dword [eax + 0x48]
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x6c]
cmp eax, 0xfb
jne 0x4326f8
mov ecx, dword [0x485d0c]
push 0xf9
call fcn.004169bd
mov esi, eax
cmp esi, ebx
je 0x4326f1
mov eax, dword [esi]
push 1
mov ecx, esi
call dword [eax + 0x14]
mov eax, dword [esi]
push edi
mov ecx, esi
call dword [eax + 0x48]
mov eax, dword [esi]
lea ecx, [ebp - 0x14]
push ecx
mov ecx, esi
call dword [eax + 0x34]
push 0xf7
jmp 0x43273d
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x6c]
cmp eax, 0xfc
jne 0x43277f
mov ecx, dword [0x485d0c]
push 0xfa
call fcn.004169bd
mov esi, eax
cmp esi, ebx
je 0x432738
mov eax, dword [esi]
push 1
mov ecx, esi
call dword [eax + 0x14]
mov eax, dword [esi]
push edi
mov ecx, esi
call dword [eax + 0x48]
mov eax, dword [esi]
lea ecx, [ebp - 0x14]
push ecx
mov ecx, esi
call dword [eax + 0x34]
push 0xf8
mov ecx, dword [0x485d0c]
call fcn.004169bd
mov edi, eax
cmp edi, ebx
je 0x43277f
mov eax, dword [0x485d0c]
mov eax, dword [eax + 4]
push ebx
push 0x50
push 7
push str.IDB_DNS_STATUS_SAFE
lea ecx, [edi + 0x70]
mov dword [edi + 0x80], eax
call fcn.0042754c
lea ecx, [edi + 0x70]
call fcn.004097cc
mov eax, dword [edi]
push 1
mov ecx, edi
call dword [eax + 0x14]
mov ecx, dword [ebp - 0x10]
add ecx, 0xfffffff0
call fcn.00405c12
mov ecx, dword [ebp - 0x14]
add ecx, 0xfffffff0
call fcn.00405c12
push 0x483dc8
call dword [sym.imp.KERNEL32.DLL_LeaveCriticalSection]
xor eax, eax
inc eax
call fcn.004358ec
ret