Function at 0x401920
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x42127d
mov eax, dword fs:[0]
push eax
sub esp, 0xadc
mov eax, dword [0x42d008]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, ecx
mov dword [ebp - 0xacc], eax
mov dword [ebp - 0xac8], eax
mov dword [ebp - 0xae8], eax
mov dword [ebp - 0xac4], 0
push 0x208
lea eax, [ebp - 0x218]
mov dword [ebp - 4], 1
push 0
push eax
call fcn.004112f0
add esp, 0xc
lea eax, [ebp - 0x218]
push 0x104
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
xor eax, eax
mov dword [ebp - 0xa20], 0
lea ecx, [ebp - 0x218]
mov dword [ebp - 0xa1c], 0
mov dword [ebp - 0xa20], 0
lea edx, [ecx + 2]
mov dword [ebp - 0xa1c], 7
mov word [ebp - 0xa30], ax
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4019d6
sub ecx, edx
lea eax, [ebp - 0x218]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0xa30]
call fcn.004030f0
mov byte [ebp - 4], 2
lea edx, [ebp - 0xa30]
mov edi, dword [ebp - 0xa1c]
cmp edi, 8
mov esi, dword [ebp - 0xa20]
cmovae edx, dword [ebp - 0xa30]
test esi, esi
je 0x401a44
or ecx, 0xffffffff
lea eax, [esi - 1]
cmp eax, ecx
cmovb ecx, eax
cmp word [edx + ecx*2], 0x5c
lea ecx, [edx + ecx*2]
je 0x401a3e
cmp ecx, edx
je 0x401a44
sub ecx, 2
cmp word [ecx], 0x5c
jne 0x401a31
sub ecx, edx
sar ecx, 1
jmp 0x401a47
or ecx, 0xffffffff
xor eax, eax
mov dword [ebp - 0xa50], 0
inc ecx
mov word [ebp - 0xa60], ax
cmp esi, ecx
mov dword [ebp - 0xa4c], 0
lea eax, [ebp - 0xa30]
mov dword [ebp - 0xa50], 0
cmovb ecx, esi
mov dword [ebp - 0xa4c], 7
cmp edi, 8
push ecx
cmovae eax, dword [ebp - 0xa30]
lea ecx, [ebp - 0xa60]
push eax
call fcn.004030f0
mov edi, 2
mov dword [ebp - 0xac4], edi
lea eax, [ebp - 0xa60]
mov byte [ebp - 4], 3
push eax
lea ecx, [ebp - 0xa30]
call fcn.00402ec0
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0xa4c]
cmp edx, 8
jb 0x401b00
mov ecx, dword [ebp - 0xa60]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x401af6
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4028ed
push edx
push ecx
call fcn.0040f721
add esp, 8
xor eax, eax
mov dword [ebp - 0xa50], 0
mov dword [ebp - 0xa4c], 7
mov word [ebp - 0xa60], ax
push 0x800
push eax
lea eax, [ebp - 0xa18]
mov byte [ebp - 4], 2
push eax
call fcn.004112f0
add esp, 0xc
lea eax, [ebp - 0xa30]
lea ecx, [ebp - 0xa78]
push eax
call fcn.00403000
push str.config.ini
lea ecx, [ebp - 0xa78]
mov byte [ebp - 4], 8
call fcn.00402d40
cmp dword [ebp - 0xa64], 8
lea eax, [ebp - 0xa78]
cmovae eax, dword [ebp - 0xa78]
push eax
push 0x800
lea eax, [ebp - 0xa18]
push eax
push 0x428938
push str.ServiceVersion
push str.ServerLoadInfo
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
mov ecx, 0x428938
lea eax, [ebp - 0xa18]
nop dword [eax]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x401bc6
test dx, dx
je 0x401bc2
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x401bc6
add eax, 4
add ecx, 4
test dx, dx
jne 0x401ba0
xor eax, eax
jmp 0x401bcb
sbb eax, eax
or eax, 1
test eax, eax
je 0x40278e
xor eax, eax
mov dword [ebp - 0xab0], 0
lea ecx, [ebp - 0x218]
mov dword [ebp - 0xaac], 0
mov dword [ebp - 0xab0], 0
lea edx, [ecx + 2]
mov dword [ebp - 0xaac], 7
mov word [ebp - 0xac0], ax
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x401c10
sub ecx, edx
lea eax, [ebp - 0x218]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0xac0]
call fcn.004030f0
lea edx, [ebp - 0xac0]
mov byte [ebp - 4], 9
lea ecx, [ebp - 0xa60]
call fcn.00404ad0
mov byte [ebp - 4], 0xc
mov edx, dword [ebp - 0xaac]
cmp edx, 8
jb 0x401c8b
mov ecx, dword [ebp - 0xac0]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x401c81
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4028f2
push edx
push ecx
call fcn.0040f721
add esp, 8
xor eax, eax
mov dword [ebp - 0xab0], 0
mov dword [ebp - 0xaac], 7
mov word [ebp - 0xac0], ax
lea eax, [ebp - 0xa60]
mov byte [ebp - 4], 0xb
xorps xmm0, xmm0
lea ecx, [ebp - 0xa40]
push eax
movups xmmword [ebp - 0xa40], xmm0
call fcn.00405740
xorps xmm0, xmm0
mov dword [ebp - 0xa98], 0
xor eax, eax
mov dword [ebp - 0xa94], 0
lea ecx, [ebp - 0xa18]
mov dword [ebp - 0xa98], 0
movups xmmword [ebp - 0xae4], xmm0
mov dword [ebp - 0xa94], 7
lea edx, [ecx + 2]
mov word [ebp - 0xaa8], ax
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x401d10
sub ecx, edx
lea eax, [ebp - 0xa18]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0xaa8]
call fcn.004030f0
lea eax, [ebp - 0xaa8]
mov byte [ebp - 4], 0x10
push eax
lea ecx, [ebp - 0xae4]
call fcn.00405740
mov byte [ebp - 4], 0x11
mov edx, dword [ebp - 0xa94]
cmp edx, 8
jb 0x401d8c
mov ecx, dword [ebp - 0xaa8]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x401d82
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4028f7
push edx
push ecx
call fcn.0040f721
add esp, 8
xor eax, eax
mov dword [ebp - 0xa98], 0
mov dword [ebp - 0xa94], 7
mov word [ebp - 0xaa8], ax
mov byte [ebp - 4], 0xb
mov eax, dword [ebp - 0xae4]
cmp eax, dword [ebp - 0xa40]
jl 0x4025ea
jg 0x401dfb
mov eax, dword [ebp - 0xae0]
cmp eax, dword [ebp - 0xa3c]
jl 0x4025ea
jg 0x401dfb
mov eax, dword [ebp - 0xadc]
cmp eax, dword [ebp - 0xa38]
jl 0x4025ea
jg 0x401dfb
mov eax, dword [ebp - 0xad8]
cmp eax, dword [ebp - 0xa34]
jle 0x4025ea
xor eax, eax
mov dword [ebp - 0xa80], 0
push eax
mov dword [ebp - 0xa7c], 0
lea ecx, [ebp - 0xa90]
push 0x428940
mov dword [ebp - 0xa80], 0
mov dword [ebp - 0xa7c], 7
mov word [ebp - 0xa90], ax
call fcn.004030f0
mov esi, 0x42d790
mov byte [ebp - 4], 0x25
mov dword [ebp - 0xad0], esi
nop dword [eax]
push ecx
lea edx, [ebp - 0xa30]
lea ecx, [ebp - 0xaa8]
call fcn.00403300
add esp, 4
push 0x428944
mov ecx, eax
mov byte [ebp - 4], 0x26
call fcn.00402d40
mov dword [ebp - 0xa38], 0
xor ecx, ecx
mov dword [ebp - 0xa34], 0
or edi, 4
mov dword [ebp - 0xac4], edi
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0xa48], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0xa38], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
mov word [eax], cx
mov byte [ebp - 4], 0x29
mov edx, dword [ebp - 0xa94]
cmp edx, 8
jb 0x401f00
mov ecx, dword [ebp - 0xaa8]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x401ef6
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4028ed
push edx
push ecx
call fcn.0040f721
add esp, 8
xor eax, eax
mov dword [ebp - 0xa98], 0
mov dword [ebp - 0xa94], 7
mov word [ebp - 0xaa8], ax
lea eax, [ebp - 0xa18]
mov byte [ebp - 4], 0x28
push eax
lea ecx, [ebp - 0xa48]
call fcn.00402d40
push 0x428944
lea ecx, [ebp - 0xa48]
call fcn.00402d40
cmp dword [esi + 0x14], 8
mov edx, esi
jb 0x401f4d
mov edx, dword [esi]
mov edi, dword [ebp - 0xa38]
mov eax, dword [ebp - 0xa34]
mov ecx, dword [esi + 0x10]
sub eax, edi
mov dword [ebp - 0xad4], edi
cmp ecx, eax
ja 0x401fa9
add edi, ecx
lea eax, [ecx + ecx]
cmp dword [ebp - 0xa34], 8
lea esi, [ebp - 0xa48]
push eax
cmovae esi, dword [ebp - 0xa48]
mov eax, dword [ebp - 0xad4]
push edx
mov dword [ebp - 0xa38], edi
lea eax, [esi + eax*2]
push eax
call fcn.00412950
add esp, 0xc
xor eax, eax
mov word [esi + edi*2], ax
mov esi, dword [ebp - 0xad0]
jmp 0x401fc4
push ecx
push edx
mov byte [ebp - 0xac8], 0
push dword [ebp - 0xac8]
push ecx
lea ecx, [ebp - 0xa48]
call fcn.004034f0
cmp dword [ebp - 0xa34], 8
lea eax, [ebp - 0xa48]
push 0
cmovae eax, dword [ebp - 0xa48]
push eax
call fcn.0041300e
add esp, 8
test eax, eax
jne 0x402311
cmp dword [ebp + 0x1c], 8
lea eax, [ebp + 8]
mov ecx, esi
cmovae eax, dword [ebp + 8]
cmp dword [esi + 0x14], 8
jb 0x402000
mov ecx, dword [esi]
push eax
push ecx
call fcn.00413169
add esp, 8
test eax, eax
je 0x402097
mov byte [ebp - 4], 0x49
mov edx, dword [ebp - 0xa34]
cmp edx, 8
jb 0x402056
mov ecx, dword [ebp - 0xa48]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40204c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4028ed
push edx
push ecx
call fcn.0040f721
add esp, 8
xor eax, eax
mov dword [ebp - 0xa38], 0
mov dword [ebp - 0xa34], 7
mov word [ebp - 0xa48], ax
add esi, 0x18
mov byte [ebp - 4], 0x25
mov dword [ebp - 0xad0], esi
cmp esi, 0x42d7d8
jge 0x402122
mov edi, dword [ebp - 0xac4]
jmp 0x401e50
cmp dword [ebp - 0xa34], 8
lea eax, [ebp - 0xa48]
push dword [ebp - 0xa38]
cmovae eax, dword [ebp - 0xa48]
lea ecx, [ebp - 0xa90]
push eax
call fcn.004030f0
mov byte [ebp - 4], 0x45
mov edx, dword [ebp - 0xa34]
cmp edx, 8
jb 0x402101
mov ecx, dword [ebp - 0xa48]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4020f7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4028fc
push edx
push ecx
call fcn.0040f721
add esp, 8
xor eax, eax
mov dword [ebp - 0xa38], 0
mov dword [ebp - 0xa34], 7
mov word [ebp - 0xa48], ax
mov byte [ebp - 4], 0x25
mov byte [ebp - 4], 0x4d
xor eax, eax
mov esi, dword [ebp - 0xacc]
movups xmm0, xmmword [ebp - 0xa90]
mov word [ebp - 0xa90], ax
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
movups xmmword [esi], xmm0
movq xmm0, qword [ebp - 0xa80]
movq qword [esi + 0x10], xmm0
mov byte [ebp - 4], 0x25
or dword [ebp - 0xac4], 1
mov dword [ebp - 0xa80], 0
mov dword [ebp - 0xa7c], 7
mov byte [ebp - 4], 0x4e
mov dword [ebp - 0xa80], eax
mov dword [ebp - 0xa7c], 7
mov word [ebp - 0xa90], ax
mov byte [ebp - 4], 0x52
mov edx, dword [ebp - 0xa4c]
cmp edx, 8
jb 0x4021d8
mov ecx, dword [ebp - 0xa60]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4021ce
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x402901
push edx
push ecx
call fcn.0040f721
add esp, 8
xor eax, eax
mov dword [ebp - 0xa50], 0
mov dword [ebp - 0xa4c], 7
mov word [ebp - 0xa60], ax
mov byte [ebp - 4], 0x56
mov edx, dword [ebp - 0xa64]
cmp edx, 8
jb 0x402239
mov ecx, dword [ebp - 0xa78]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40222f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x402906
push edx
push ecx
call fcn.0040f721
add esp, 8
xor eax, eax
mov dword [ebp - 0xa68], 0
mov dword [ebp - 0xa64], 7
mov word [ebp - 0xa78], ax
mov byte [ebp - 4], 0x5a
mov edx, dword [ebp - 0xa1c]
cmp edx, 8
jb 0x40229a
mov ecx, dword [ebp - 0xa30]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x402290
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40290b
push edx
push ecx
call fcn.0040f721
add esp, 8
xor eax, eax
mov dword [ebp - 0xa20], 0
mov dword [ebp - 0xa1c], 7
mov word [ebp - 0xa30], ax
mov dword [ebp - 4], 0x5e
mov edx, dword [ebp + 0x1c]
cmp edx, 8
jb 0x4022f8
mov ecx, dword [ebp + 8]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4022ee
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x402910
push edx
push ecx
call fcn.0040f721
add esp, 8
xor eax, eax
mov dword [ebp + 0x18], 0
mov dword [ebp + 0x1c], 7
mov word [ebp + 8], ax
jmp 0x4028cc
cmp dword [ebp + 0x1c], 8
lea ecx, [ebp + 8]
mov edx, dword [ebp - 0xa20]
cmovae ecx, dword [ebp + 8]
mov eax, dword [ebp - 0xa1c]
mov edi, dword [ebp + 0x18]
sub eax, edx
mov dword [ebp - 0xac8], edx
cmp edi, eax
ja 0x40237b
cmp dword [ebp - 0xa1c], 8
lea eax, [edx + edi]
mov dword [ebp - 0xa20], eax
lea esi, [ebp - 0xa30]
cmovae esi, dword [ebp - 0xa30]
lea eax, [edi + edi]
push eax
push ecx
lea eax, [esi + edx*2]
push eax
call fcn.00412950
mov eax, dword [ebp - 0xac8]
add esp, 0xc
add eax, edi
xor ecx, ecx
mov word [esi + eax*2], cx
lea eax, [ebp - 0xa30]
jmp 0x402396
push edi
push ecx
mov byte [ebp - 0xac8], 0
lea ecx, [ebp - 0xa30]
push dword [ebp - 0xac8]
push edi
call fcn.004034f0
mov esi, dword [ebp - 0xacc]
mov ecx, esi
push eax
call fcn.00403000
or dword [ebp - 0xac4], 1
mov byte [ebp - 4], 0x2d
mov edx, dword [ebp - 0xa34]
cmp edx, 8
jb 0x4023ef
mov ecx, dword [ebp - 0xa48]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4023e5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x402915
push edx
push ecx
call fcn.0040f721
add esp, 8
xor eax, eax
mov dword [ebp - 0xa38], 0
mov dword [ebp - 0xa34], 7
mov word [ebp - 0xa48], ax
mov byte [ebp - 4], 0x31
mov edx, dword [ebp - 0xa7c]
cmp edx, 8
jb 0x402450
mov ecx, dword [ebp - 0xa90]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x402446
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40291a
push edx
push ecx
call fcn.0040f721
add esp, 8
xor eax, eax
mov dword [ebp - 0xa80], 0
mov dword [ebp - 0xa7c], 7
mov word [ebp - 0xa90], ax
mov byte [ebp - 4], 0x35
mov edx, dword [ebp - 0xa4c]
cmp edx, 8
jb 0x4024b1
mov ecx, dword [ebp - 0xa60]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4024a7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40291f
push edx
push ecx
call fcn.0040f721
add esp, 8
xor eax, eax
mov dword [ebp - 0xa50], 0
mov dword [ebp - 0xa4c], 7
mov word [ebp - 0xa60], ax
mov byte [ebp - 4], 0x39
mov edx, dword [ebp - 0xa64]
cmp edx, 8
jb 0x402512
mov ecx, dword [ebp - 0xa78]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x402508
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x402924
push edx
push ecx
call fcn.0040f721
add esp, 8
xor eax, eax
mov dword [ebp - 0xa68], 0
mov dword [ebp - 0xa64], 7
mov word [ebp - 0xa78], ax
mov byte [ebp - 4], 0x3d
mov edx, dword [ebp - 0xa1c]
cmp edx, 8
jb 0x402573
mov ecx, dword [ebp - 0xa30]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x402569
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x402929
push edx
push ecx
call fcn.0040f721
add esp, 8
xor eax, eax
mov dword [ebp - 0xa20], 0
mov dword [ebp - 0xa1c], 7
mov word [ebp - 0xa30], ax
mov dword [ebp - 4], 0x41
mov edx, dword [ebp + 0x1c]
cmp edx, 8
jb 0x4025d1
mov ecx, dword [ebp + 8]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4025c7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40292e
push edx
push ecx
call fcn.0040f721
add esp, 8
xor eax, eax
mov dword [ebp + 0x18], 0
mov dword [ebp + 0x1c], 7
mov word [ebp + 8], ax
jmp 0x4028cc
lea eax, [ebp + 8]
push eax
lea ecx, [ebp - 0xa30]
call fcn.00402dc0
mov esi, dword [ebp - 0xacc]
mov ecx, esi
push eax
call fcn.00403000
mov dword [ebp - 0xac4], 3
mov byte [ebp - 4], 0x15
mov edx, dword [ebp - 0xa4c]
cmp edx, 8
jb 0x402655
mov ecx, dword [ebp - 0xa60]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40264b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x402933
push edx
push ecx
call fcn.0040f721
add esp, 8
xor eax, eax
mov dword [ebp - 0xa50], 0
mov dword [ebp - 0xa4c], 7
mov word [ebp - 0xa60], ax
mov byte [ebp - 4], 0x19
mov edx, dword [ebp - 0xa64]
cmp edx, 8
jb 0x4026b6
mov ecx, dword [ebp - 0xa78]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4026ac
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x402938
push edx
push ecx
call fcn.0040f721
add esp, 8
xor eax, eax
mov dword [ebp - 0xa68], 0
mov dword [ebp - 0xa64], 7
mov word [ebp - 0xa78], ax
mov byte [ebp - 4], 0x1d
mov edx, dword [ebp - 0xa1c]
cmp edx, 8
jb 0x402717
mov ecx, dword [ebp - 0xa30]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40270d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40293d
push edx
push ecx
call fcn.0040f721
add esp, 8
xor eax, eax
mov dword [ebp - 0xa20], 0
mov dword [ebp - 0xa1c], 7
mov word [ebp - 0xa30], ax
mov dword [ebp - 4], 0x21
mov edx, dword [ebp + 0x1c]
cmp edx, 8
jb 0x402775
mov ecx, dword [ebp + 8]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40276b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x402942
push edx
push ecx
call fcn.0040f721
add esp, 8
xor eax, eax
mov dword [ebp + 0x18], 0
mov dword [ebp + 0x1c], 7
mov word [ebp + 8], ax
jmp 0x4028cc
lea eax, [ebp + 8]
push eax
lea ecx, [ebp - 0xa30]
call fcn.00402dc0
mov esi, dword [ebp - 0xacc]
mov ecx, esi
push eax
call fcn.00403000
mov dword [ebp - 0xac4], 3
mov byte [ebp - 4], 0x62
mov edx, dword [ebp - 0xa64]
cmp edx, 8
jb 0x4027f9
mov ecx, dword [ebp - 0xa78]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4027ef
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x402947
push edx
push ecx
call fcn.0040f721
add esp, 8
xor eax, eax
mov dword [ebp - 0xa68], 0
mov dword [ebp - 0xa64], 7
mov word [ebp - 0xa78], ax
mov byte [ebp - 4], 0x66
mov edx, dword [ebp - 0xa1c]
cmp edx, 8
jb 0x40285a
mov ecx, dword [ebp - 0xa30]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x402850
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40294c
push edx
push ecx
call fcn.0040f721
add esp, 8
xor eax, eax
mov dword [ebp - 0xa20], 0
mov dword [ebp - 0xa1c], 7
mov word [ebp - 0xa30], ax
mov dword [ebp - 4], 0x6a
mov edx, dword [ebp + 0x1c]
cmp edx, 8
jb 0x4028b8
mov ecx, dword [ebp + 8]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4028ae
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x402951
push edx
push ecx
call fcn.0040f721
add esp, 8
xor eax, eax
mov dword [ebp + 0x18], 0
mov dword [ebp + 0x1c], 7
mov word [ebp + 8], ax
mov byte [ebp - 4], 0
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0040f348
mov esp, ebp
pop ebp
ret
call fcn.00414c04
call fcn.00414c04
call fcn.00414c04
call fcn.00414c04
call fcn.00414c04
call fcn.00414c04
call fcn.00414c04
call fcn.00414c04
call fcn.00414c04
call fcn.00414c04
call fcn.00414c04
call fcn.00414c04
call fcn.00414c04
call fcn.00414c04
call fcn.00414c04
call fcn.00414c04
call fcn.00414c04
call fcn.00414c04
call fcn.00414c04
call fcn.00414c04
call fcn.00414c04
int3