Function at 0x420105
Capabilities:
Check for software breakpoints
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x571dd2
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
mov eax, 0x2870
call fcn.0054c740
mov dword [ebp - 0x2860], ecx
mov dword [ebp - 0x1420], 0
mov dword [ebp - 0x204c], 0
mov dword [ebp - 0x1424], 0
mov dword [ebp - 0x142c], 0
mov dword [ebp - 0x1c44], 0
mov dword [ebp - 0x1428], 0
mov dword [ebp - 0x1c40], 0
lea ecx, [ebp - 0x894]
call fcn.00401420
mov dword [ebp - 4], 0
push fcn.0056206c
push fcn.00401420
push 0x200
push 4
lea eax, [ebp - 0x1c2c]
push eax
call fcn.0054d570
mov byte [ebp - 4], 1
push 0x409
mov ecx, dword [ebp - 0x2860]
call fcn.005654d4
mov dword [ebp - 0x890], eax
lea ecx, [ebp - 0x88c]
push ecx
mov ecx, dword [ebp - 0x890]
call fcn.0041c750
push eax
mov ecx, dword [ebp - 0x890]
call fcn.004237c0
push 0x59e71c
lea edx, [ebp - 0x2858]
push edx
call fcn.0053922f
add esp, 8
mov dword [ebp - 0x2864], eax
mov eax, dword [ebp - 0x2864]
mov dword [ebp - 0x2868], eax
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x2868]
call fcn.005287a0
push eax
lea ecx, [ebp - 0xa1c]
push ecx
call fcn.0054c6e3
add esp, 8
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x2858]
call fcn.0056206c
push ecx
mov ecx, esp
mov dword [ebp - 0x285c], esp
lea edx, [ebp - 0xa1c]
push edx
call fcn.005620da
mov dword [ebp - 0x286c], eax
lea eax, [ebp - 0x1c2c]
push eax
mov ecx, dword [ebp - 0x2860]
call fcn.0041e72f
mov dword [ebp - 0x2870], eax
mov ecx, dword [ebp - 0x2870]
mov dword [ebp - 0x1c40], ecx
mov dword [ebp - 0x1420], 0
jmp 0x420288
mov edx, dword [ebp - 0x1420]
add edx, 1
mov dword [ebp - 0x1420], edx
mov eax, dword [ebp - 0x1420]
cmp eax, dword [ebp - 0x1c40]
jge 0x4202d4
mov ecx, dword [ebp + 8]
push ecx
mov edx, dword [ebp - 0x1420]
lea ecx, [ebp + edx*4 - 0x1c2c]
call fcn.0055f4a1
test eax, eax
jl 0x4202d2
mov eax, dword [ebp - 0x1420]
lea ecx, [ebp + eax*4 - 0x1c2c]
call fcn.005287a0
push eax
lea ecx, [ebp - 0x894]
push ecx
call fcn.0055f827
add esp, 8
jmp 0x420279
mov dword [ebp - 0x1420], 0
jmp 0x4202ef
mov edx, dword [ebp - 0x1420]
add edx, 1
mov dword [ebp - 0x1420], edx
cmp dword [ebp - 0x1420], 0x21
jge 0x420314
push 4
push 0
mov eax, dword [ebp - 0x1420]
lea ecx, [ebp + eax*4 - 0x918]
push ecx
call fcn.0054bf90
add esp, 0xc
jmp 0x4202e0
mov dword [ebp - 0x2050], 1
push 0x800
push 0
lea edx, [ebp - 0x2850]
push edx
call fcn.0054bf90
add esp, 0xc
lea eax, [ebp - 0xa1c]
push eax
push 0x800
lea ecx, [ebp - 0x2850]
push ecx
push 0x5cfe14
lea edx, [ebp - 0x88c]
push edx
lea ecx, [ebp - 0x894]
call fcn.005287a0
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
jne 0x4203b0
push 0
push 0
push 0x59e728
mov ecx, dword [ebp - 0x2860]
call fcn.00564245
mov byte [ebp - 4], 0
push fcn.0056206c
push 0x200
push 4
lea eax, [ebp - 0x1c2c]
push eax
call fcn.0054d4d6
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x894]
call fcn.0056206c
jmp 0x420e48
lea ecx, [ebp - 0xe1c]
push ecx
lea edx, [ebp - 0x898]
push edx
lea eax, [ebp - 0x89c]
push eax
lea ecx, [ebp - 0x8a0]
push ecx
lea edx, [ebp - 0x8a4]
push edx
lea eax, [ebp - 0x8a8]
push eax
lea ecx, [ebp - 0x8ac]
push ecx
lea edx, [ebp - 0x8b0]
push edx
lea eax, [ebp - 0x8b4]
push eax
lea ecx, [ebp - 0x8b8]
push ecx
lea edx, [ebp - 0x8bc]
push edx
lea eax, [ebp - 0x8c0]
push eax
lea ecx, [ebp - 0x8c4]
push ecx
lea edx, [ebp - 0x8c8]
push edx
lea eax, [ebp - 0x8cc]
push eax
lea ecx, [ebp - 0x8d0]
push ecx
lea edx, [ebp - 0x8d4]
push edx
lea eax, [ebp - 0x8d8]
push eax
lea ecx, [ebp - 0x8dc]
push ecx
lea edx, [ebp - 0x8e0]
push edx
lea eax, [ebp - 0x8e4]
push eax
lea ecx, [ebp - 0x8e8]
push ecx
lea edx, [ebp - 0x8ec]
push edx
lea eax, [ebp - 0x8f0]
push eax
lea ecx, [ebp - 0x8f4]
push ecx
lea edx, [ebp - 0x8f8]
push edx
lea eax, [ebp - 0x8fc]
push eax
lea ecx, [ebp - 0x900]
push ecx
lea edx, [ebp - 0x904]
push edx
lea eax, [ebp - 0x908]
push eax
lea ecx, [ebp - 0x90c]
push ecx
lea edx, [ebp - 0x910]
push edx
lea eax, [ebp - 0x914]
push eax
lea ecx, [ebp - 0x918]
push ecx
push 0x59e738
lea edx, [ebp - 0x2850]
push edx
call fcn.0054d536
add esp, 0x90
push 0x200
push 0
lea eax, [ebp - 0x141c]
push eax
call fcn.0054bf90
add esp, 0xc
mov dword [ebp - 0x1420], 0
jmp 0x4204e6
mov ecx, dword [ebp - 0x1420]
add ecx, 1
mov dword [ebp - 0x1420], ecx
cmp dword [ebp - 0x1420], 0x21
jge 0x420514
mov edx, dword [ebp - 0x1420]
lea eax, [ebp + edx*4 - 0x918]
push eax
call fcn.00529529
add esp, 4
mov ecx, dword [ebp - 0x1420]
mov byte [ebp + ecx - 0x141c], al
jmp 0x4204d7
push 0x10
push 0
lea edx, [ebp - 0x1c3c]
push edx
call fcn.0054bf90
add esp, 0xc
push 0x401
push 0
lea eax, [ebp - 0x2048]
push eax
call fcn.0054bf90
add esp, 0xc
push 0x400
push 0
lea ecx, [ebp - 0x121c]
push ecx
call fcn.0054bf90
add esp, 0xc
lea edx, [ebp - 0xe1c]
push edx
lea eax, [ebp - 0x2048]
push eax
call fcn.0054be90
add esp, 8
lea ecx, [ebp - 0x2048]
push ecx
call fcn.0054ce70
add esp, 4
mov dword [ebp - 0x142c], eax
mov dword [ebp - 0x1420], 0
jmp 0x420599
mov edx, dword [ebp - 0x1420]
add edx, 1
mov dword [ebp - 0x1420], edx
mov eax, dword [ebp - 0x142c]
cdq
sub eax, edx
sar eax, 1
cmp dword [ebp - 0x1420], eax
jge 0x42068b
mov dword [ebp - 0x1c44], 0
jmp 0x4205cb
mov eax, dword [ebp - 0x1c44]
add eax, 1
mov dword [ebp - 0x1c44], eax
cmp dword [ebp - 0x1c44], 2
jge 0x4205f0
mov ecx, dword [ebp - 0x1c44]
mov edx, dword [ebp - 0x1c44]
mov al, byte [ebp + edx - 0x2048]
mov byte [ebp + ecx - 0x1c3c], al
jmp 0x4205bc
lea ecx, [ebp - 0x1c3c]
push ecx
call fcn.00529529
add esp, 4
and eax, 0xff
mov dword [ebp - 0x1424], eax
mov edx, dword [ebp - 0x1420]
mov al, byte [ebp - 0x1424]
mov byte [ebp + edx - 0x121c], al
mov dword [ebp - 0x1c44], 0
jmp 0x420638
mov ecx, dword [ebp - 0x1c44]
add ecx, 1
mov dword [ebp - 0x1c44], ecx
cmp dword [ebp - 0x1c44], 2
jge 0x420686
mov dword [ebp - 0x204c], 0
jmp 0x42065c
mov edx, dword [ebp - 0x204c]
add edx, 1
mov dword [ebp - 0x204c], edx
cmp dword [ebp - 0x204c], 0x400
jge 0x420684
mov eax, dword [ebp - 0x204c]
mov ecx, dword [ebp - 0x204c]
mov dl, byte [ebp + ecx - 0x2047]
mov byte [ebp + eax - 0x2048], dl
jmp 0x42064d
jmp 0x420629
jmp 0x42058a
push 0x800
push 0
lea eax, [ebp - 0x80c]
push eax
call fcn.0054bf90
add esp, 0xc
mov cl, byte [ebp - 0x80b]
or cl, 1
mov byte [ebp - 0x80b], cl
mov edx, dword [ebp - 0x1413]
and edx, 0xff
cmp edx, 1
jne 0x4206cf
mov al, byte [ebp - 0x80a]
or al, 1
mov byte [ebp - 0x80a], al
mov ecx, dword [ebp - 0x1415]
and ecx, 0xff
shl ecx, 1
mov dl, byte [ebp - 0x80a]
or dl, cl
mov byte [ebp - 0x80a], dl
mov eax, dword [ebp - 0x1403]
and eax, 0xff
cmp eax, 1
jne 0x42070a
mov cl, byte [ebp - 0x80a]
or cl, 0x10
mov byte [ebp - 0x80a], cl
mov edx, dword [ebp - 0x1403]
and edx, 0xff
cmp edx, 2
jne 0x420729
mov al, byte [ebp - 0x80a]
or al, 0x80
mov byte [ebp - 0x80a], al
mov ecx, dword [ebp - 0x1414]
and ecx, 0xff
cmp ecx, 0x10
jne 0x420749
mov dl, byte [ebp - 0x80a]
or dl, 0x20
mov byte [ebp - 0x80a], dl
mov eax, dword [ebp - 0x1414]
and eax, 0xff
cmp eax, 4
jne 0x420768
mov cl, byte [ebp - 0x80a]
or cl, 0x40
mov byte [ebp - 0x80a], cl
mov edx, dword [ebp - 0x1401]
and edx, 0xff
test edx, edx
jne 0x420788
mov al, byte [ebp - 0x809]
or al, 1
mov byte [ebp - 0x809], al
jmp 0x4207c9
mov ecx, dword [ebp - 0x1401]
and ecx, 0xff
cmp ecx, 1
jne 0x4207aa
mov dl, byte [ebp - 0x809]
or dl, 2
mov byte [ebp - 0x809], dl
jmp 0x4207c9
mov eax, dword [ebp - 0x1401]
and eax, 0xff
cmp eax, 2
jne 0x4207c9
mov cl, byte [ebp - 0x809]
or cl, 4
mov byte [ebp - 0x809], cl
mov edx, dword [ebp - 0x1414]
and edx, 0xff
test edx, edx
jne 0x4207e9
mov al, byte [ebp - 0x809]
or al, 8
mov byte [ebp - 0x809], al
jmp 0x42082a
mov ecx, dword [ebp - 0x1414]
and ecx, 0xff
cmp ecx, 1
jne 0x42080b
mov dl, byte [ebp - 0x809]
or dl, 0x10
mov byte [ebp - 0x809], dl
jmp 0x42082a
mov eax, dword [ebp - 0x1414]
and eax, 0xff
cmp eax, 2
jne 0x42082a
mov cl, byte [ebp - 0x809]
or cl, 0x20
mov byte [ebp - 0x809], cl
mov edx, dword [ebp - 0x1416]
and edx, 0xff
cmp edx, 1
jne 0x42084b
mov al, byte [ebp - 0x809]
or al, 0x40
mov byte [ebp - 0x809], al
jmp 0x42086b
mov ecx, dword [ebp - 0x1416]
and ecx, 0xff
cmp ecx, 2
jne 0x42086b
mov dl, byte [ebp - 0x809]
or dl, 0x80
mov byte [ebp - 0x809], dl
mov eax, dword [ebp - 0x1410]
and eax, 0xff
test eax, eax
jne 0x420888
mov cl, byte [ebp - 0x1411]
mov byte [ebp - 0x808], cl
jmp 0x4208a0
mov dl, byte [ebp - 0x1411]
mov byte [ebp - 0x7cb], dl
mov al, byte [ebp - 0x1410]
mov byte [ebp - 0x7ca], al
mov byte [ebp - 0x807], 3
mov byte [ebp - 0x806], 0xe0
mov ecx, dword [ebp - 0x141c]
and ecx, 0xff
mov dword [ebp - 0x2874], ecx
mov edx, dword [ebp - 0x2874]
sub edx, 0x20
mov dword [ebp - 0x2874], edx
cmp dword [ebp - 0x2874], 0xcc
ja case.0x4208ed.7
mov ecx, dword [ebp - 0x2874]
xor eax, eax
mov al, byte [ecx + 0x420e78]
jmp dword [eax*4 + 0x420e58]
mov dl, byte [ebp - 0x805]
or dl, 8
mov byte [ebp - 0x805], dl
jmp case.0x4208ed.7
mov al, byte [ebp - 0x805]
or al, 0x20
mov byte [ebp - 0x805], al
jmp case.0x4208ed.7
mov cl, byte [ebp - 0x805]
or cl, 0x10
mov byte [ebp - 0x805], cl
jmp case.0x4208ed.7
mov dl, byte [ebp - 0x805]
or dl, 0x40
mov byte [ebp - 0x805], dl
jmp case.0x4208ed.7
mov al, byte [ebp - 0x805]
or al, 2
mov byte [ebp - 0x805], al
jmp case.0x4208ed.7
mov cl, byte [ebp - 0x805]
or cl, 4
mov byte [ebp - 0x805], cl
jmp case.0x4208ed.7
mov dl, byte [ebp - 0x805]
or dl, 1
mov byte [ebp - 0x805], dl
mov eax, dword [ebp - 0x1403]
and eax, 0xff
and eax, 0x80
test eax, eax
je 0x42098a
mov cl, byte [ebp - 0x7c8]
or cl, 0x20
mov byte [ebp - 0x7c8], cl
mov edx, dword [ebp - 0x1416]
and edx, 0xff
test edx, edx
je 0x420d69
mov eax, dword [ebp - 0x13ff]
and eax, 0xff
mov dword [ebp - 0x2878], eax
cmp dword [ebp - 0x2878], 2
jg 0x4209e0
cmp dword [ebp - 0x2878], 2
je 0x420bcf
cmp dword [ebp - 0x2878], 0
je 0x4209f5
cmp dword [ebp - 0x2878], 1
je 0x420adb
jmp 0x420d67
cmp dword [ebp - 0x2878], 0xff
je 0x420c64
jmp 0x420d67
mov byte [ebp - 0x7c5], 1
mov byte [ebp - 0x70c], 0
mov byte [ebp - 0x70b], 1
mov byte [ebp - 0x70a], 2
mov byte [ebp - 0x709], 3
mov dword [ebp - 0x1424], 4
mov dword [ebp - 0x1420], 0x104
jmp 0x420a3d
mov ecx, dword [ebp - 0x1420]
add ecx, 1
mov dword [ebp - 0x1420], ecx
cmp dword [ebp - 0x1420], 0x200
jge 0x420ad6
mov edx, dword [ebp - 0x1424]
and edx, reloc.WSOCK32.dll_closesocket
jns 0x420a60
dec edx
or edx, 0xfffffffc
inc edx
test edx, edx
jne 0x420a97
mov eax, dword [ebp - 0x1424]
add eax, 2
mov dword [ebp - 0x1424], eax
mov ecx, dword [ebp - 0x1420]
mov dl, byte [ebp - 0x1424]
mov byte [ebp + ecx - 0x80c], dl
mov eax, dword [ebp - 0x1424]
add eax, 1
mov dword [ebp - 0x1424], eax
jmp 0x420ad1
mov ecx, dword [ebp - 0x1424]
and ecx, reloc.WSOCK32.dll_closesocket
jns 0x420aaa
dec ecx
or ecx, 0xfffffffc
inc ecx
cmp ecx, 3
jne 0x420ad1
mov edx, dword [ebp - 0x1420]
mov al, byte [ebp - 0x1424]
mov byte [ebp + edx - 0x80c], al
mov ecx, dword [ebp - 0x1424]
add ecx, 1
mov dword [ebp - 0x1424], ecx
jmp 0x420a2e
jmp 0x420d67
mov byte [ebp - 0x7c5], 2
mov byte [ebp - 0x70c], 0
mov byte [ebp - 0x70b], 1
mov byte [ebp - 0x70a], 2
mov byte [ebp - 0x709], 3
mov byte [ebp - 0x708], 4
mov byte [ebp - 0x707], 5
mov dword [ebp - 0x1424], 6
mov dword [ebp - 0x1420], 0x106
jmp 0x420b31
mov edx, dword [ebp - 0x1420]
add edx, 1
mov dword [ebp - 0x1420], edx
cmp dword [ebp - 0x1420], 0x200
jge 0x420bca
mov eax, dword [ebp - 0x1424]
and eax, reloc.WSOCK32.dll_closesocket
jns 0x420b53
dec eax
or eax, 0xfffffffc
inc eax
cmp eax, 2
jne 0x420b8b
mov ecx, dword [ebp - 0x1424]
add ecx, 2
mov dword [ebp - 0x1424], ecx
mov edx, dword [ebp - 0x1420]
mov al, byte [ebp - 0x1424]
mov byte [ebp + edx - 0x80c], al
mov ecx, dword [ebp - 0x1424]
add ecx, 1
mov dword [ebp - 0x1424], ecx
jmp 0x420bc5
mov edx, dword [ebp - 0x1424]
and edx, reloc.WSOCK32.dll_closesocket
jns 0x420b9e
dec edx
or edx, 0xfffffffc
inc edx
cmp edx, 1
jne 0x420bc5
mov eax, dword [ebp - 0x1420]
mov cl, byte [ebp - 0x1424]
mov byte [ebp + eax - 0x80c], cl
mov edx, dword [ebp - 0x1424]
add edx, 1
mov dword [ebp - 0x1424], edx
jmp 0x420b22
jmp 0x420d67
mov byte [ebp - 0x7c5], 4
mov byte [ebp - 0x70c], 0
mov byte [ebp - 0x70b], 1
mov dword [ebp - 0x1424], 2
mov dword [ebp - 0x1420], 0x102
jmp 0x420c09
mov eax, dword [ebp - 0x1420]
add eax, 1
mov dword [ebp - 0x1420], eax
cmp dword [ebp - 0x1420], 0x200
jge 0x420c5f
mov ecx, dword [ebp - 0x1424]
and ecx, reloc.WSOCK32.dll_accept
jns 0x420c28
dec ecx
or ecx, 0xfffffffe
inc ecx
test ecx, ecx
jne 0x420c5d
mov edx, dword [ebp - 0x1424]
add edx, 1
mov dword [ebp - 0x1424], edx
mov eax, dword [ebp - 0x1420]
mov cl, byte [ebp - 0x1424]
mov byte [ebp + eax - 0x80c], cl
mov edx, dword [ebp - 0x1424]
add edx, 1
mov dword [ebp - 0x1424], edx
jmp 0x420bfa
jmp 0x420d67
mov dword [ebp - 0x2854], 0
mov al, byte [ebp - 0x1414]
mov byte [ebp - 0x287c], al
cmp byte [ebp - 0x287c], 4
je 0x420c8e
cmp byte [ebp - 0x287c], 0x10
je 0x420c9a
jmp 0x420ca4
mov dword [ebp - 0x2854], 1
jmp 0x420ca4
mov dword [ebp - 0x2854], 1
cmp dword [ebp - 0x2854], 0
je 0x420d0b
mov dword [ebp - 0x1420], 0
mov dword [ebp - 0x1424], pe_nt_image_headers32
jmp 0x420cd2
mov ecx, dword [ebp - 0x1424]
add ecx, 1
mov dword [ebp - 0x1424], ecx
cmp dword [ebp - 0x1424], 0x300
jge 0x420d09
mov edx, dword [ebp - 0x1424]
mov eax, dword [ebp - 0x1420]
mov cl, byte [ebp + eax - 0x121c]
mov byte [ebp + edx - 0x80c], cl
mov edx, dword [ebp - 0x1420]
add edx, 3
mov dword [ebp - 0x1420], edx
jmp 0x420cc3
jmp 0x420d67
mov dword [ebp - 0x1420], 0
mov dword [ebp - 0x1424], pe_nt_image_headers32
jmp 0x420d30
mov eax, dword [ebp - 0x1424]
add eax, 1
mov dword [ebp - 0x1424], eax
cmp dword [ebp - 0x1424], 0x300
jge 0x420d67
mov ecx, dword [ebp - 0x1424]
mov edx, dword [ebp - 0x1420]
mov al, byte [ebp + edx - 0x121c]
mov byte [ebp + ecx - 0x80c], al
mov ecx, dword [ebp - 0x1420]
add ecx, 2
mov dword [ebp - 0x1420], ecx
jmp 0x420d21
jmp 0x420dbe
mov dword [ebp - 0x1420], 0
mov dword [ebp - 0x1424], pe_nt_image_headers32
jmp 0x420d8e
mov edx, dword [ebp - 0x1424]
add edx, 1
mov dword [ebp - 0x1424], edx
cmp dword [ebp - 0x1424], 0x200
jge 0x420dbe
mov eax, dword [ebp - 0x1424]
mov cl, byte [ebp - 0x1420]
mov byte [ebp + eax - 0x80c], cl
mov edx, dword [ebp - 0x1420]
add edx, 1
mov dword [ebp - 0x1420], edx
jmp 0x420d7f
push 0x400
lea eax, [ebp - 0x121c]
push eax
lea ecx, [ebp - 0x60c]
push ecx
call fcn.0054c7e0
add esp, 0xc
push 0x200
lea edx, [ebp - 0x80c]
push edx
mov eax, dword [ebp - 0x2860]
add eax, 0x460
push eax
call fcn.0054c7e0
add esp, 0xc
push 0x400
lea ecx, [ebp - 0x121c]
push ecx
mov edx, dword [ebp - 0x2860]
add edx, 0x660
push edx
call fcn.0054c7e0
add esp, 0xc
mov byte [ebp - 4], 0
push fcn.0056206c
push 0x200
push 4
lea eax, [ebp - 0x1c2c]
push eax
call fcn.0054d4d6
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x894]
call fcn.0056206c
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 4