Function at 0x2004a099
Capabilities:
Read .ini file

Disassembly:
mov eax, 0x2009f1b4
call fcn.2007d394
mov eax, 0x123c
call fcn.2007eb40
mov eax, dword [0x200cc84c]
push esi
mov esi, ecx
mov ecx, dword [esi + 0x108f4]
push edi
xor eax, ebp
xor edi, edi
cmp ecx, edi
mov dword [ebp - 0x10], eax
je 0x2004adfe
cmp dword [esi + 0x10894], edi
jne 0x2004a109
mov eax, dword [ecx]
push 0x200a9ac4
push edi
push edi
call dword [eax]
mov ecx, dword [esi + 0x108f4]
mov eax, dword [ecx]
push 0x200a9aa8
push edi
push 1
call dword [eax]
mov esi, dword [esi + 0x108f4]
mov eax, dword [esi]
push 0x200a9a90
push edi
push 2
mov ecx, esi
call dword [eax]
jmp 0x2004adfe
push ebx
push 0xf
pop ebx
push edi
lea ecx, [ebp - 0x1130]
mov dword [ebp - 0x11e0], 0x63
mov dword [ebp - 0x1118], ebx
call fcn.20001bc0
mov dword [ebp - 4], edi
lea eax, [ebp - 0x1130]
push eax
mov ecx, esi
call fcn.20044117
mov eax, dword [esi + 0x2a4]
cmp eax, edi
je 0x2004a16d
cmp eax, 1
je 0x2004a16d
cmp eax, 2
je 0x2004a153
cmp eax, 3
jne 0x2004a1ad
cmp dword [ebp - 0x1118], 0x10
mov eax, dword [ebp - 0x112c]
jae 0x2004a168
lea eax, [ebp - 0x112c]
push eax
push 1
jmp 0x2004a1a2
cmp byte [esi + 0x10e58], 1
mov eax, dword [ebp - 0x112c]
jne 0x2004a190
cmp dword [ebp - 0x1118], 0x10
jae 0x2004a18b
lea eax, [ebp - 0x112c]
push eax
push 2
jmp 0x2004a1a2
cmp dword [ebp - 0x1118], 0x10
jae 0x2004a19f
lea eax, [ebp - 0x112c]
push eax
push 3
mov ecx, dword [esi + 0x108f4]
mov edx, dword [ecx]
push edi
call dword [edx]
lea eax, [ebp - 0x11e8]
push eax
lea eax, [ebp - 0x11e0]
push eax
mov ecx, esi
mov dword [ebp - 0x11e8], 0x63
call fcn.2003f9ff
push dword [ebp - 0x11e8]
lea eax, [ebp - 0x1114]
push dword [ebp - 0x11e0]
push 0x200a9a70
push eax
call fcn.2007d900
add esp, 0x10
cmp dword [ebp - 0x11e0], 0x55
jle 0x2004a201
mov dword [ebp - 0x11e8], 1
jmp 0x2004a215
xor eax, eax
cmp dword [ebp - 0x11e0], 0x3c
setle al
inc eax
inc eax
mov dword [ebp - 0x11e8], eax
mov ecx, dword [esi + 0x108f4]
mov eax, dword [ecx]
lea edx, [ebp - 0x1114]
push edx
push dword [ebp - 0x11e8]
push 1
call dword [eax]
lea eax, [ebp - 0x11dc]
push eax
lea eax, [ebp - 0x11ec]
push eax
lea eax, [ebp - 0x1204]
push eax
lea eax, [ebp - 0x11fc]
push eax
mov ecx, esi
call fcn.2003aeb9
fild qword [ebp - 0x11fc]
push edi
lea ecx, [ebp - 0x11a0]
fstp dword [ebp - 0x11e8]
mov dword [ebp - 0x1188], ebx
fild qword [ebp - 0x1204]
fstp dword [ebp - 0x11f4]
call fcn.20001bc0
mov byte [ebp - 4], 1
push edi
lea ecx, [ebp - 0x1184]
mov dword [ebp - 0x116c], ebx
call fcn.20001bc0
mov byte [ebp - 4], 2
push edi
lea ecx, [ebp - 0x1168]
mov dword [ebp - 0x1150], ebx
call fcn.20001bc0
mov byte [ebp - 4], 3
push edi
lea ecx, [ebp - 0x114c]
mov dword [ebp - 0x1134], ebx
call fcn.20001bc0
mov byte [ebp - 4], 4
cmp dword [ebp - 0x11f8], edi
jg 0x2004a318
jl 0x2004a2d7
cmp dword [ebp - 0x11fc], 0x400
ja 0x2004a2ea
push dword [ebp - 0x11f8]
push dword [ebp - 0x11fc]
push str._I64d
jmp 0x2004a32e
cmp dword [ebp - 0x11f8], edi
jg 0x2004a318
jl 0x2004a300
cmp dword [ebp - 0x11fc], 0x100000
ja 0x2004a318
fld dword [ebp - 0x11e8]
push ecx
fmul dword [0x200a77a4]
push ecx
fstp qword [esp]
push 0x200a87bc
jmp 0x2004a32e
fld dword [ebp - 0x11e8]
push ecx
fmul dword [0x200a87b8]
push ecx
fstp qword [esp]
push str._.1fM
lea eax, [ebp - 0x1114]
push eax
call fcn.2007d900
add esp, 0x10
lea eax, [ebp - 0x1114]
push eax
lea ecx, [ebp - 0x1184]
call fcn.20003a20
cmp dword [ebp - 0x1200], edi
jg 0x2004a3a6
jl 0x2004a365
cmp dword [ebp - 0x1204], 0x400
ja 0x2004a378
push dword [ebp - 0x1200]
push dword [ebp - 0x1204]
push str._I64d
jmp 0x2004a3bc
cmp dword [ebp - 0x1200], edi
jg 0x2004a3a6
jl 0x2004a38e
cmp dword [ebp - 0x1204], 0x100000
ja 0x2004a3a6
fld dword [ebp - 0x11f4]
push ecx
fmul dword [0x200a77a4]
push ecx
fstp qword [esp]
push 0x200a87bc
jmp 0x2004a3bc
fld dword [ebp - 0x11f4]
push ecx
fmul dword [0x200a87b8]
push ecx
fstp qword [esp]
push str._.1fM
lea eax, [ebp - 0x1114]
push eax
call fcn.2007d900
add esp, 0x10
lea eax, [ebp - 0x1114]
push eax
lea ecx, [ebp - 0x11a0]
call fcn.20003a20
fild dword [ebp - 0x11ec]
mov eax, dword [ebp - 0x11ec]
test eax, eax
jge 0x2004a3f3
fadd dword [0x200a6f40]
mov ecx, dword [ebp - 0x11dc]
fild dword [ebp - 0x11dc]
test ecx, ecx
jge 0x2004a409
fadd dword [0x200a6f40]
cmp eax, 0x400
fstp dword [ebp - 0x11e0]
ja 0x2004a432
shl eax, 3
fstp st(0)
push eax
lea eax, [ebp - 0x1114]
push str._dbps
push eax
call fcn.2007d900
add esp, 0xc
jmp 0x2004a468
push ecx
cmp eax, 0x100000
push ecx
lea eax, [ebp - 0x1114]
ja 0x2004a451
fmul dword [0x200a6ba4]
fstp qword [esp]
push 0x200a9a54
jmp 0x2004a45f
fmul dword [0x200a9a50]
fstp qword [esp]
push str._.1fMbps
push eax
call fcn.2007d900
add esp, 0x10
lea eax, [ebp - 0x1114]
push eax
lea ecx, [ebp - 0x114c]
call fcn.20003a20
cmp dword [ebp - 0x11dc], 0x400
ja 0x2004a4a6
mov eax, dword [ebp - 0x11dc]
shl eax, 3
push eax
lea eax, [ebp - 0x1114]
push str._dbps
push eax
call fcn.2007d900
add esp, 0xc
jmp 0x2004a4e7
cmp dword [ebp - 0x11dc], 0x100000
fld dword [ebp - 0x11e0]
push ecx
lea eax, [ebp - 0x1114]
push ecx
ja 0x2004a4d0
fmul dword [0x200a6ba4]
fstp qword [esp]
push 0x200a9a54
jmp 0x2004a4de
fmul dword [0x200a9a50]
fstp qword [esp]
push str._.1fMbps
push eax
call fcn.2007d900
add esp, 0x10
lea eax, [ebp - 0x1114]
push eax
lea ecx, [ebp - 0x1168]
call fcn.20003a20
mov ecx, esi
call fcn.2003f83a
cmp eax, edi
jne 0x2004a50c
mov dword [ebp - 0x11e0], edi
jmp 0x2004a532
fld dword [ebp - 0x11e0]
shl eax, 7
fmul dword [0x200a6ba8]
mov dword [ebp - 0x11ec], eax
fidiv dword [ebp - 0x11ec]
call fcn.2007f3d0
mov dword [ebp - 0x11e0], eax
push 0x104
lea eax, [ebp - 0x114]
push eax
push dword [0x200cdc18]
mov byte [0x200dde11], 1
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
mov byte [ebp + eax - 0x114], 0
lea eax, [ebp - 0x114]
push eax
lea ecx, [ebp - 0x11dc]
call fcn.20004f37
mov byte [ebp - 4], 5
push 0x5c
lea ecx, [ebp - 0x11dc]
call fcn.2002e9fc
push eax
lea eax, [ebp - 0x11ec]
push eax
lea ecx, [ebp - 0x11dc]
call fcn.2002ea3a
mov byte [ebp - 4], 6
push eax
lea ecx, [ebp - 0x11dc]
call fcn.20015e97
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x11ec]
call fcn.200026ee
push str.psnetwork.ini
lea ecx, [ebp - 0x11dc]
call fcn.200037d8
push dword [ebp - 0x11dc]
push 0
push str.OutputDetailInfo
push 0x200a7b84
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
test eax, eax
setne al
mov byte [0x200dde10], al
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x11dc]
call fcn.200026ee
cmp byte [0x200dde10], 0
mov edi, dword [sym.imp.KERNEL32.dll_GetTickCount]
je 0x2004acc4
lea eax, [esi + 0x108f8]
inc dword [eax + 0x18]
push eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [esi + 0x10928]
mov dword [ebp - 0x11f0], eax
mov eax, dword [esi + 0x1092c]
mov dword [ebp - 0x11ec], eax
lea eax, [esi + 0x108f8]
push eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
fild qword [ebp - 0x11f0]
dec dword [esi + 0x10910]
push 0
lea ecx, [ebp - 0x11d8]
fstp dword [ebp - 0x11e4]
mov dword [ebp - 0x11c0], ebx
call fcn.20001bc0
mov byte [ebp - 4], 7
cmp dword [ebp - 0x11ec], 0
jg 0x2004a6b9
jl 0x2004a677
cmp dword [ebp - 0x11f0], 0x400
ja 0x2004a68a
push dword [ebp - 0x11ec]
push dword [ebp - 0x11f0]
push str._I64d
jmp 0x2004a6cf
cmp dword [ebp - 0x11ec], 0
jg 0x2004a6b9
jl 0x2004a6a1
cmp dword [ebp - 0x11f0], 0x100000
ja 0x2004a6b9
fld dword [ebp - 0x11e4]
push ecx
fmul dword [0x200a77a4]
push ecx
fstp qword [esp]
push 0x200a87bc
jmp 0x2004a6cf
fld dword [ebp - 0x11e4]
push ecx
fmul dword [0x200a87b8]
push ecx
fstp qword [esp]
push str._.1fM
lea eax, [ebp - 0x1114]
push eax
call fcn.2007d900
add esp, 0x10
lea eax, [ebp - 0x1114]
push eax
lea ecx, [ebp - 0x11d8]
call fcn.20003a20
fld dword [0x200a4a98]
fld dword [ebp - 0x11f4]
fucompp
fnstsw ax
test ah, 0x44
jp 0x2004a70e
and dword [ebp - 0x1228], 0
jmp 0x2004a72b
fld dword [ebp - 0x11e4]
fmul dword [0x200a6ba8]
fdiv dword [ebp - 0x11f4]
call fcn.2007f3d0
mov dword [ebp - 0x1228], eax
push 0
lea ecx, [ebp - 0x11bc]
mov dword [ebp - 0x11a4], ebx
call fcn.20001bc0
mov byte [ebp - 4], 8
lea ebx, [esi + 0x10938]
inc dword [ebx + 0x18]
push ebx
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
push 0x200a9a30
lea ecx, [ebp - 0x11bc]
call fcn.20003a20
mov eax, dword [esi + 0x10d8c]
mov ecx, dword [eax]
cmp ecx, eax
mov dword [ebp - 0x11e4], ecx
je 0x2004a7d9
mov ecx, dword [ebp - 0x11e4]
lea eax, [ebp - 0x1248]
add ecx, 0x14
push eax
call fcn.20034401
mov byte [ebp - 4], 9
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0x11bc]
call fcn.20008e33
mov byte [ebp - 4], 8
push 0
push 1
lea ecx, [ebp - 0x1248]
call fcn.2000275e
push 0x200a4c08
lea ecx, [ebp - 0x11bc]
call fcn.20008f58
lea ecx, [ebp - 0x11e4]
call fcn.2003cdcc
mov eax, dword [esi + 0x10d8c]
cmp dword [ebp - 0x11e4], eax
jne 0x2004a774
push ebx
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
dec dword [ebx + 0x18]
lea ecx, [ebp - 0x11dc]
call fcn.200026bf
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x11e8]
call fcn.200026bf
mov byte [ebp - 4], 0xb
lea ecx, [esi + 0x688]
call fcn.2001bb9f
jmp 0x2004a993
mov eax, dword [ebx + 0x18]
and dword [ebp - 0x120c], 0
lea ecx, [ebx + 0x40]
mov dword [ebp - 0x1210], eax
call fcn.2003acb4
fstp dword [ebp - 0x11e4]
mov ecx, ebx
call fcn.2001a300
fstp dword [ebp - 0x11f4]
fld dword [ebp - 0x11e4]
lea ecx, [ebp - 0x1210]
fcomp dword [0x200a6c04]
push str._H:_M:_S
fnstsw ax
test ah, 0x41
jne 0x2004a8c7
lea eax, [ebp - 0x11ec]
push eax
call fcn.20004f86
mov byte [ebp - 4], 0xc
fld dword [ebp - 0x11f4]
mov ecx, dword [ebx + 0xb0]
sub esp, 0x10
fstp qword [esp + 8]
fld dword [ebp - 0x11e4]
fstp qword [esp]
push dword [eax]
push dword [ebx + 0x18]
push ecx
push ecx
lea ecx, [esi + 0x688]
call fcn.2001c109
neg eax
sbb al, al
and al, 0xfe
add al, 0x2d
movsx eax, al
push eax
lea eax, [ebp - 0x11dc]
push str._r_n_c_u__u__s__.2f__.2f
push eax
call fcn.2000379b
add esp, 0x28
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x11ec]
jmp 0x2004a96d
lea eax, [ebp - 0x1200]
push eax
call fcn.20004f86
mov dword [ebp - 0x11f8], eax
mov byte [ebp - 4], 0xd
mov eax, dword [ebx + 0xb0]
mov dword [ebp - 0x1208], eax
call edi
fld dword [ebp - 0x11f4]
sub eax, dword [ebx + 0x88]
xor edx, edx
mov ecx, 0x3e8
div ecx
lea ecx, [esi + 0x688]
push eax
movzx eax, word [ebx + 0x84]
push eax
movzx eax, word [ebx + 0x82]
push eax
mov eax, dword [ebp - 0x11f8]
sub esp, 0x10
fstp qword [esp + 8]
fld dword [ebp - 0x11e4]
fstp qword [esp]
push dword [eax]
push dword [ebx + 0x18]
push dword [ebp - 0x1208]
push dword [ebp - 0x1208]
call fcn.2001c109
neg eax
sbb al, al
and al, 0xfe
add al, 0x2d
movsx eax, al
push eax
lea eax, [ebp - 0x11dc]
push str._r_n_c_u__u__s__.2f___.2f__u__u__u
push eax
call fcn.2000379b
add esp, 0x34
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x1200]
call fcn.200026ee
mov eax, dword [ebp - 0x11dc]
push dword [eax - 0xc]
lea ecx, [ebp - 0x11e8]
push eax
call fcn.20002ece
push ebx
lea ecx, [esi + 0x688]
call fcn.2001be8e
mov ebx, eax
test ebx, ebx
jne 0x2004a811
mov eax, dword [ebp - 0x11b8]
push 0x10
pop ebx
cmp dword [ebp - 0x11a4], ebx
jae 0x2004a9b4
lea eax, [ebp - 0x11b8]
mov dword [ebp - 0x1208], eax
lea eax, [esi + 0x19654]
cmp dword [eax + 0x18], ebx
jb 0x2004a9ca
mov eax, dword [eax + 4]
jmp 0x2004a9cd
add eax, 4
mov dword [ebp - 0x11e4], eax
lea eax, [esi + 0x19638]
cmp dword [eax + 0x18], ebx
jb 0x2004a9e3
mov eax, dword [eax + 4]
jmp 0x2004a9e6
add eax, 4
mov dword [ebp - 0x11f4], eax
lea eax, [esi + 0x1961c]
cmp dword [eax + 0x18], ebx
jb 0x2004a9fc
mov eax, dword [eax + 4]
jmp 0x2004a9ff
add eax, 4
mov dword [ebp - 0x121c], eax
lea eax, [esi + 0x19600]
cmp dword [eax + 0x18], ebx
jb 0x2004aa15
mov eax, dword [eax + 4]
jmp 0x2004aa18
add eax, 4
mov dword [ebp - 0x1220], eax
lea eax, [esi + 0x19590]
cmp dword [eax + 0x18], ebx
jb 0x2004aa2e
mov eax, dword [eax + 4]
jmp 0x2004aa31
add eax, 4
mov dword [ebp - 0x1214], eax
lea eax, [esi + 0x195e4]
cmp dword [eax + 0x18], ebx
jb 0x2004aa47
mov eax, dword [eax + 4]
jmp 0x2004aa4a
add eax, 4
mov dword [ebp - 0x1218], eax
lea eax, [esi + 0x195c8]
cmp dword [eax + 0x18], ebx
jb 0x2004aa60
mov eax, dword [eax + 4]
jmp 0x2004aa63
add eax, 4
mov dword [ebp - 0x122c], eax
lea eax, [esi + 0x195ac]
cmp dword [eax + 0x18], ebx
jb 0x2004aa79
mov ecx, dword [eax + 4]
jmp 0x2004aa7c
lea ecx, [eax + 4]
lea eax, [esi + 0x19574]
cmp dword [eax + 0x18], ebx
jb 0x2004aa8c
mov eax, dword [eax + 4]
jmp 0x2004aa8f
add eax, 4
cmp dword [ebp - 0x11c0], ebx
mov edx, dword [ebp - 0x11d4]
jae 0x2004aaa3
lea edx, [ebp - 0x11d4]
cmp dword [ebp - 0x1188], ebx
mov dword [ebp - 0x1224], edx
mov edx, dword [ebp - 0x119c]
jae 0x2004aabd
lea edx, [ebp - 0x119c]
cmp dword [ebp - 0x116c], ebx
mov dword [ebp - 0x120c], edx
mov edx, dword [ebp - 0x1180]
jae 0x2004aad7
lea edx, [ebp - 0x1180]
cmp dword [ebp - 0x1150], ebx
mov dword [ebp - 0x1200], edx
mov edx, dword [ebp - 0x1164]
jae 0x2004aaf1
lea edx, [ebp - 0x1164]
cmp dword [ebp - 0x1134], ebx
mov dword [ebp - 0x11f8], edx
mov edx, dword [ebp - 0x1148]
jae 0x2004ab0b
lea edx, [ebp - 0x1148]
push dword [ebp - 0x11e8]
mov dword [ebp - 0x11ec], edx
push dword [ebp - 0x1208]
lea ebx, [esi + 0x19430]
push dword [ebp - 0x11e4]
push dword [ebp - 0x11f4]
push dword [ebp - 0x121c]
push dword [ebp - 0x1220]
push dword [ebp - 0x1214]
push dword [ebp - 0x1218]
push dword [ebp - 0x122c]
push ecx
push eax
call edi
sub eax, dword [esi + 0x2c0]
xor edx, edx
mov ecx, 0x3e8
div ecx
add eax, dword [esi + 0x2bc]
push eax
call edi
sub eax, dword [esi + 0x2b8]
xor edx, edx
mov ecx, 0x3e8
div ecx
mov ecx, esi
add eax, dword [esi + 0x2b4]
push eax
push dword [esi + 0x875c]
push dword [esi + 0x8758]
push dword [esi + 0x8750]
call fcn.2003f83a
push eax
push dword [esi + 0x194ac]
mov eax, dword [esi + 0x194a4]
push dword [esi + 0x194a8]
shr eax, 0xa
push eax
push 5
mov ecx, ebx
call fcn.20073d1f
shr eax, 0xa
push eax
mov ecx, ebx
call fcn.20073c88
shr eax, 0xa
push eax
push dword [esi + 0x198d0]
mov ecx, esi
push dword [esi + 0x198cc]
push dword [esi + 0x198d4]
push 1
call fcn.2003c5bc
push 0
mov ecx, esi
mov ebx, eax
call fcn.2003c5bc
add ebx, eax
push ebx
call edi
sub eax, dword [esi + 0x1949c]
mov ebx, 0x3e8
xor edx, edx
mov ecx, ebx
div ecx
push eax
call edi
sub eax, dword [esi + 0x19498]
xor edx, edx
div ebx
mov ecx, esi
push eax
call fcn.2003b735
push eax
lea ebx, [esi + 0x193c8]
push 5
mov ecx, ebx
call fcn.20073d1f
shr eax, 0xa
push eax
mov ecx, ebx
call fcn.20073c88
shr eax, 0xa
push eax
push dword [esi + 0x19230]
lea eax, [ebp - 0x1114]
push dword [ebp - 0x1228]
push dword [ebp - 0x1224]
push dword [ebp - 0x120c]
push dword [ebp - 0x1200]
push dword [ebp - 0x11f8]
push dword [ebp - 0x11ec]
push dword [ebp - 0x11e0]
push 0x200a9830
push eax
call fcn.2007d900
add esp, 0xa4
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x11e8]
call fcn.200026ee
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x11dc]
call fcn.200026ee
mov byte [ebp - 4], 7
xor ebx, ebx
push ebx
push 1
lea ecx, [ebp - 0x11bc]
call fcn.2000275e
mov byte [ebp - 4], 4
push ebx
push 1
lea ecx, [ebp - 0x11d8]
call fcn.2000275e
jmp 0x2004ad37
mov ebx, dword [ebp - 0x119c]
push 0x10
pop eax
cmp dword [ebp - 0x1188], eax
jae 0x2004acdb
lea ebx, [ebp - 0x119c]
cmp dword [ebp - 0x116c], eax
mov edx, dword [ebp - 0x1180]
jae 0x2004acef
lea edx, [ebp - 0x1180]
cmp dword [ebp - 0x1150], eax
mov ecx, dword [ebp - 0x1164]
jae 0x2004ad03
lea ecx, [ebp - 0x1164]
cmp dword [ebp - 0x1134], eax
mov eax, dword [ebp - 0x1148]
jae 0x2004ad17
lea eax, [ebp - 0x1148]
push ebx
push edx
push ecx
push eax
push dword [ebp - 0x11e0]
lea eax, [ebp - 0x1114]
push 0x200a97e8
push eax
call fcn.2007d900
add esp, 0x1c
xor ebx, ebx
cmp dword [ebp - 0x11e0], 0x5c
mov dword [esi + 0x10e60], ebx
jle 0x2004ad52
mov dword [esi + 0x10e60], 1
jmp 0x2004ad66
xor eax, eax
cmp dword [ebp - 0x11e0], 0x46
setle al
inc eax
inc eax
mov dword [esi + 0x10e60], eax
call edi
mov dword [esi + 0x10e68], eax
lea eax, [esi + 0x10e5c]
mov ecx, dword [eax]
neg ecx
sbb ecx, ecx
and ecx, 0xfffffffe
inc ecx
inc ecx
cmp ecx, ebx
mov dword [eax], ecx
je 0x2004ad8d
mov eax, dword [esi + 0x10e60]
jmp 0x2004ad8f
xor eax, eax
mov esi, dword [esi + 0x108f4]
mov edx, dword [esi]
lea ecx, [ebp - 0x1114]
push ecx
push eax
push 2
mov ecx, esi
call dword [edx]
mov byte [ebp - 4], 3
xor esi, esi
push ebx
inc esi
push esi
lea ecx, [ebp - 0x114c]
call fcn.2000275e
mov byte [ebp - 4], 2
push ebx
push esi
lea ecx, [ebp - 0x1168]
call fcn.2000275e
mov byte [ebp - 4], 1
push ebx
push esi
lea ecx, [ebp - 0x1184]
call fcn.2000275e
mov byte [ebp - 4], 0
push ebx
push esi
lea ecx, [ebp - 0x11a0]
call fcn.2000275e
or dword [ebp - 4], 0xffffffff
push ebx
push esi
lea ecx, [ebp - 0x1130]
call fcn.2000275e
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov ecx, dword [ebp - 0x10]
pop edi
xor ecx, ebp
pop esi
call fcn.2007c9ae
leave
ret