Function at 0x10182f50
Capabilities:
Enumerate pe sections

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1138
call fcn.1007fc60
mov eax, dword [0x101da820]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
push edi
mov dword [ebp - 0x106c], 0
mov dword [ebp - 0x10a0], 0
mov dword [ebp - 0x1094], 0
mov dword [ebp - 0x109c], 0
xorpd xmm0, xmm0
movlpd qword [ebp - 0x1088], xmm0
xorpd xmm0, xmm0
movlpd qword [ebp - 0x10a8], xmm0
lea eax, [ebp - 0x1050]
mov dword [ebp - 0x1068], eax
mov ecx, dword [ebp + 0xc]
and ecx, 0x800
jne 0x10182fcc
mov dword [ebp - 0x10e8], 1
jmp 0x10182fd6
mov dword [ebp - 0x10e8], 0
mov edx, dword [ebp - 0x10e8]
mov dword [ebp - 0x10bc], edx
lea eax, [ebp - 0x18]
mov dword [ebp - 0x1098], eax
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x1058], ecx
xorpd xmm0, xmm0
movlpd qword [ebp - 0x10c4], xmm0
mov edx, dword [ebp + 8]
mov dword [ebp - 0x10f4], edx
mov eax, dword [ebp - 0x10f4]
cmp dword [eax + 4], 0
ja 0x10183035
jb 0x10183022
mov ecx, dword [ebp - 0x10f4]
cmp dword [ecx], 0x16
jae 0x10183035
push 8
mov edx, dword [ebp + 8]
push edx
call fcn.101846c0
add esp, 8
jmp 0x10183c37
lea eax, [ebp - 0x10a8]
push eax
push 0x16
push 0x6054b50
mov ecx, dword [ebp + 8]
push ecx
call fcn.10183c50
add esp, 0x10
test eax, eax
jne 0x10183066
push 7
mov edx, dword [ebp + 8]
push edx
call fcn.101846c0
add esp, 8
jmp 0x10183c37
push 0x16
mov eax, dword [ebp - 0x1068]
push eax
mov ecx, dword [ebp - 0x10a4]
push ecx
mov edx, dword [ebp - 0x10a8]
push edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x44]
push ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x38]
call eax
add esp, 0x14
cmp eax, 0x16
je 0x101830a7
push 0x14
mov ecx, dword [ebp + 8]
push ecx
call fcn.101846c0
add esp, 8
jmp 0x10183c37
mov edx, dword [ebp - 0x1068]
cmp dword [edx], 0x6054b50
je 0x101830c8
push 8
mov eax, dword [ebp + 8]
push eax
call fcn.101846c0
add esp, 8
jmp 0x10183c37
cmp dword [ebp - 0x10a4], 0
jl 0x101831ef
jg 0x101830e4
cmp dword [ebp - 0x10a8], 0x4c
jb 0x101831ef
push 0x14
mov ecx, dword [ebp - 0x1098]
push ecx
mov edx, dword [ebp - 0x10a8]
sub edx, 0x14
mov eax, dword [ebp - 0x10a4]
sbb eax, 0
push eax
push edx
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x44]
push edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x38]
call ecx
add esp, 0x14
cmp eax, 0x14
jne 0x101831ef
mov edx, dword [ebp - 0x1098]
cmp dword [edx], 0x7064b50
jne 0x101831ef
mov eax, dword [ebp - 0x1098]
mov esi, dword [eax + 8]
xor edi, edi
mov ecx, dword [ebp - 0x1098]
xor edx, edx
mov eax, dword [ecx + 0xc]
mov cl, 0x20
call fcn.1018d680
or esi, eax
or edi, edx
mov dword [ebp - 0x10c4], esi
mov dword [ebp - 0x10c0], edi
mov edx, dword [ebp + 8]
mov eax, dword [edx]
sub eax, 0x38
mov ecx, dword [edx + 4]
sbb ecx, 0
mov dword [ebp - 0x1138], eax
mov dword [ebp - 0x1134], ecx
mov edx, dword [ebp - 0x10c0]
cmp edx, dword [ebp - 0x1134]
jb 0x101831a6
ja 0x10183193
mov eax, dword [ebp - 0x10c4]
cmp eax, dword [ebp - 0x1138]
jbe 0x101831a6
push 8
mov ecx, dword [ebp + 8]
push ecx
call fcn.101846c0
add esp, 8
jmp 0x10183c37
push 0x38
mov edx, dword [ebp - 0x1058]
push edx
mov eax, dword [ebp - 0x10c0]
push eax
mov ecx, dword [ebp - 0x10c4]
push ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x44]
push eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x38]
call edx
add esp, 0x14
cmp eax, 0x38
jne 0x101831ef
mov eax, dword [ebp - 0x1058]
cmp dword [eax], 0x6064b50
jne 0x101831ef
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x48]
mov dword [edx + 0x34], 1
mov eax, dword [ebp - 0x1068]
movzx ecx, word [eax + 0xa]
mov edx, dword [ebp + 8]
mov dword [edx + 0x10], ecx
mov eax, dword [ebp - 0x1068]
movzx ecx, word [eax + 8]
mov dword [ebp - 0x10a0], ecx
mov edx, dword [ebp - 0x1068]
movzx eax, word [edx + 4]
mov dword [ebp - 0x1094], eax
mov ecx, dword [ebp - 0x1068]
movzx edx, word [ecx + 6]
mov dword [ebp - 0x109c], edx
mov eax, dword [ebp - 0x1068]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0x106c], ecx
mov edx, dword [ebp - 0x1068]
mov eax, dword [edx + 0x10]
xor ecx, ecx
mov dword [ebp - 0x1088], eax
mov dword [ebp - 0x1084], ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x48]
cmp dword [eax + 0x34], 0
je 0x1018344b
mov ecx, dword [ebp - 0x1098]
mov edx, dword [ecx + 0x10]
mov dword [ebp - 0x1124], edx
mov eax, dword [ebp - 0x1058]
mov esi, dword [eax + 0x20]
xor edi, edi
mov ecx, dword [ebp - 0x1058]
xor edx, edx
mov eax, dword [ecx + 0x24]
mov cl, 0x20
call fcn.1018d680
or esi, eax
or edi, edx
mov dword [ebp - 0x1104], esi
mov dword [ebp - 0x1100], edi
mov edx, dword [ebp - 0x1058]
mov esi, dword [edx + 0x18]
xor edi, edi
mov eax, dword [ebp - 0x1058]
xor edx, edx
mov eax, dword [eax + 0x1c]
mov cl, 0x20
call fcn.1018d680
or esi, eax
or edi, edx
mov dword [ebp - 0x10fc], esi
mov dword [ebp - 0x10f8], edi
mov ecx, dword [ebp - 0x1058]
mov esi, dword [ecx + 4]
xor edi, edi
mov edx, dword [ebp - 0x1058]
xor ecx, ecx
mov eax, dword [edx + 8]
mov edx, ecx
mov cl, 0x20
call fcn.1018d680
or esi, eax
or edi, edx
mov dword [ebp - 0x1130], esi
mov dword [ebp - 0x112c], edi
mov edx, dword [ebp - 0x1058]
mov esi, dword [edx + 0x28]
xor edi, edi
mov eax, dword [ebp - 0x1058]
xor edx, edx
mov eax, dword [eax + 0x2c]
mov cl, 0x20
call fcn.1018d680
or esi, eax
or edi, edx
mov dword [ebp - 0x110c], esi
mov dword [ebp - 0x1108], edi
cmp dword [ebp - 0x112c], 0
ja 0x10183351
jb 0x1018333e
cmp dword [ebp - 0x1130], 0x2c
jae 0x10183351
push 9
mov ecx, dword [ebp + 8]
push ecx
call fcn.101846c0
add esp, 8
jmp 0x10183c37
cmp dword [ebp - 0x1124], 1
je 0x1018336d
push 0xa
mov edx, dword [ebp + 8]
push edx
call fcn.101846c0
add esp, 8
jmp 0x10183c37
cmp dword [ebp - 0x1100], 0
ja 0x1018337f
cmp dword [ebp - 0x1104], 0xffffffff
jbe 0x10183392
push 2
mov eax, dword [ebp + 8]
push eax
call fcn.101846c0
add esp, 8
jmp 0x10183c37
mov ecx, dword [ebp - 0x1104]
mov edx, dword [ebp + 8]
mov dword [edx + 0x10], ecx
cmp dword [ebp - 0x10f8], 0
ja 0x101833b0
cmp dword [ebp - 0x10fc], 0xffffffff
jbe 0x101833c3
push 2
mov eax, dword [ebp + 8]
push eax
call fcn.101846c0
add esp, 8
jmp 0x10183c37
mov ecx, dword [ebp - 0x10fc]
mov dword [ebp - 0x10a0], ecx
cmp dword [ebp - 0x1108], 0
ja 0x101833e1
cmp dword [ebp - 0x110c], 0xffffffff
jbe 0x101833f4
push 0xf
mov edx, dword [ebp + 8]
push edx
call fcn.101846c0
add esp, 8
jmp 0x10183c37
mov eax, dword [ebp - 0x110c]
mov dword [ebp - 0x106c], eax
mov ecx, dword [ebp - 0x1058]
mov edx, dword [ecx + 0x10]
mov dword [ebp - 0x1094], edx
mov eax, dword [ebp - 0x1058]
mov ecx, dword [eax + 0x14]
mov dword [ebp - 0x109c], ecx
mov edx, dword [ebp - 0x1058]
mov esi, dword [edx + 0x30]
xor edi, edi
mov eax, dword [ebp - 0x1058]
xor edx, edx
mov eax, dword [eax + 0x34]
mov cl, 0x20
call fcn.1018d680
or esi, eax
or edi, edx
mov dword [ebp - 0x1088], esi
mov dword [ebp - 0x1084], edi
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x10]
cmp edx, dword [ebp - 0x10a0]
je 0x1018346c
push 0xa
mov eax, dword [ebp + 8]
push eax
call fcn.101846c0
add esp, 8
jmp 0x10183c37
mov ecx, dword [ebp - 0x1094]
or ecx, dword [ebp - 0x109c]
je 0x1018349f
cmp dword [ebp - 0x1094], 1
jne 0x1018348c
cmp dword [ebp - 0x109c], 1
je 0x1018349f
push 0xa
mov edx, dword [ebp + 8]
push edx
call fcn.101846c0
add esp, 8
jmp 0x10183c37
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x10]
imul ecx, ecx, 0x2e
cmp dword [ebp - 0x106c], ecx
jae 0x101834c3
push 9
mov edx, dword [ebp + 8]
push edx
call fcn.101846c0
add esp, 8
jmp 0x10183c37
mov eax, dword [ebp - 0x106c]
xor ecx, ecx
add eax, dword [ebp - 0x1088]
adc ecx, dword [ebp - 0x1084]
mov edx, dword [ebp + 8]
mov dword [ebp - 0x1114], eax
mov dword [ebp - 0x1110], ecx
mov dword [ebp - 0x10d4], edx
mov eax, dword [ebp - 0x10d4]
mov ecx, dword [ebp - 0x1110]
cmp ecx, dword [eax + 4]
jb 0x10183522
ja 0x1018350f
mov edx, dword [ebp - 0x10d4]
mov eax, dword [ebp - 0x1114]
cmp eax, dword [edx]
jbe 0x10183522
push 9
mov ecx, dword [ebp + 8]
push ecx
call fcn.101846c0
add esp, 8
jmp 0x10183c37
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 0x1088]
mov dword [edx + 8], eax
mov ecx, dword [ebp - 0x1084]
mov dword [edx + 0xc], ecx
mov edx, dword [ebp + 8]
cmp dword [edx + 0x10], 0
je 0x10183c1d
push 0
mov eax, dword [ebp - 0x106c]
push eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x48]
push edx
mov eax, dword [ebp + 8]
push eax
call fcn.10184890
add esp, 0x10
test eax, eax
je 0x10183587
push 0
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x10]
push edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x48]
add ecx, 0x10
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.10184890
add esp, 0x10
test eax, eax
jne 0x1018359a
push 0x10
mov eax, dword [ebp + 8]
push eax
call fcn.101846c0
add esp, 8
jmp 0x10183c37
cmp dword [ebp - 0x10bc], 0
je 0x101835d9
push 0
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x10]
push edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x48]
add ecx, 0x20
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.10184890
add esp, 0x10
test eax, eax
jne 0x101835d9
push 0x10
mov eax, dword [ebp + 8]
push eax
call fcn.101846c0
add esp, 8
jmp 0x10183c37
mov ecx, dword [ebp - 0x106c]
push ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x48]
mov ecx, dword [eax]
push ecx
mov edx, dword [ebp - 0x1084]
push edx
mov eax, dword [ebp - 0x1088]
push eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x44]
push edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x38]
call ecx
add esp, 0x14
cmp eax, dword [ebp - 0x106c]
je 0x10183624
push 0x14
mov edx, dword [ebp + 8]
push edx
call fcn.101846c0
add esp, 8
jmp 0x10183c37
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x48]
mov edx, dword [ecx]
mov dword [ebp - 0x1054], edx
mov eax, dword [ebp - 0x106c]
mov dword [ebp - 0x1090], eax
mov dword [ebp - 0x107c], 0
jmp 0x10183659
mov ecx, dword [ebp - 0x107c]
add ecx, 1
mov dword [ebp - 0x107c], ecx
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 0x107c]
cmp eax, dword [edx + 0x10]
jae 0x10183c1d
cmp dword [ebp - 0x1090], 0x2e
jb 0x10183682
mov ecx, dword [ebp - 0x1054]
cmp dword [ecx], 0x2014b50
je 0x10183695
push 9
mov edx, dword [ebp + 8]
push edx
call fcn.101846c0
add esp, 8
jmp 0x10183c37
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x48]
mov edx, dword [ebp - 0x1054]
sub edx, dword [ecx]
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x48]
mov eax, dword [ecx + 0x10]
mov ecx, dword [ebp - 0x107c]
mov dword [eax + ecx*4], edx
cmp dword [ebp - 0x10bc], 0
je 0x101836d6
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x48]
mov ecx, dword [eax + 0x20]
mov edx, dword [ebp - 0x107c]
mov eax, dword [ebp - 0x107c]
mov dword [ecx + edx*4], eax
mov ecx, dword [ebp - 0x1054]
mov edx, dword [ecx + 0x14]
xor eax, eax
mov dword [ebp - 0x1060], edx
mov dword [ebp - 0x105c], eax
mov ecx, dword [ebp - 0x1054]
mov edx, dword [ecx + 0x18]
xor eax, eax
mov dword [ebp - 0x1074], edx
mov dword [ebp - 0x1070], eax
mov ecx, dword [ebp - 0x1054]
mov edx, dword [ecx + 0x2a]
xor eax, eax
mov dword [ebp - 0x10d0], edx
mov dword [ebp - 0x10cc], eax
mov ecx, dword [ebp - 0x1054]
movzx edx, word [ecx + 0x1c]
mov dword [ebp - 0x10b8], edx
mov eax, dword [ebp - 0x1054]
movzx ecx, word [eax + 0x1e]
mov dword [ebp - 0x1078], ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x48]
cmp dword [eax + 0x38], 0
jne 0x10183a40
cmp dword [ebp - 0x1078], 0
je 0x10183a40
mov ecx, dword [ebp - 0x105c]
cmp ecx, dword [ebp - 0x1070]
jb 0x10183790
ja 0x10183776
mov edx, dword [ebp - 0x1060]
cmp edx, dword [ebp - 0x1074]
jbe 0x10183790
mov eax, dword [ebp - 0x1060]
mov dword [ebp - 0x10f0], eax
mov ecx, dword [ebp - 0x105c]
mov dword [ebp - 0x10ec], ecx
jmp 0x101837a8
mov edx, dword [ebp - 0x1074]
mov dword [ebp - 0x10f0], edx
mov eax, dword [ebp - 0x1070]
mov dword [ebp - 0x10ec], eax
mov ecx, dword [ebp - 0x10ec]
cmp ecx, dword [ebp - 0x10cc]
jb 0x10183830
ja 0x101837c6
mov edx, dword [ebp - 0x10f0]
cmp edx, dword [ebp - 0x10d0]
jbe 0x10183830
mov eax, dword [ebp - 0x105c]
cmp eax, dword [ebp - 0x1070]
jb 0x101837fe
ja 0x101837e4
mov ecx, dword [ebp - 0x1060]
cmp ecx, dword [ebp - 0x1074]
jbe 0x101837fe
mov edx, dword [ebp - 0x1060]
mov dword [ebp - 0x10e4], edx
mov eax, dword [ebp - 0x105c]
mov dword [ebp - 0x10e0], eax
jmp 0x10183816
mov ecx, dword [ebp - 0x1074]
mov dword [ebp - 0x10e4], ecx
mov edx, dword [ebp - 0x1070]
mov dword [ebp - 0x10e0], edx
mov eax, dword [ebp - 0x10e4]
mov dword [ebp - 0x10dc], eax
mov ecx, dword [ebp - 0x10e0]
mov dword [ebp - 0x10d8], ecx
jmp 0x10183848
mov edx, dword [ebp - 0x10d0]
mov dword [ebp - 0x10dc], edx
mov eax, dword [ebp - 0x10cc]
mov dword [ebp - 0x10d8], eax
cmp dword [ebp - 0x10dc], 0xffffffff
jne 0x10183a40
cmp dword [ebp - 0x10d8], 0
jne 0x10183a40
mov ecx, dword [ebp - 0x1078]
mov dword [ebp - 0x1080], ecx
cmp dword [ebp - 0x1080], 0
je 0x10183a40
mov dword [ebp - 0x1064], 0
mov edx, dword [ebp - 0x1078]
mov eax, dword [ebp - 0x10b8]
lea ecx, [eax + edx + 0x2e]
cmp ecx, dword [ebp - 0x1090]
jbe 0x10183948
mov edx, dword [ebp - 0x1078]
push edx
call fcn.1006d5fd
add esp, 4
mov dword [ebp - 0x1064], eax
cmp dword [ebp - 0x1064], 0
jne 0x101838d2
push 0x10
mov eax, dword [ebp + 8]
push eax
call fcn.101846c0
add esp, 8
jmp 0x10183c37
mov ecx, dword [ebp - 0x1078]
push ecx
mov edx, dword [ebp - 0x1064]
push edx
mov eax, dword [ebp - 0x1088]
add eax, 0x2e
mov ecx, dword [ebp - 0x1084]
adc ecx, 0
xor edx, edx
add eax, dword [ebp - 0x10b8]
adc ecx, edx
push ecx
push eax
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x44]
push ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x38]
call eax
add esp, 0x14
cmp eax, dword [ebp - 0x1078]
je 0x1018393a
mov ecx, dword [ebp - 0x1064]
push ecx
call fcn.1006d9e1
add esp, 4
push 0x14
mov edx, dword [ebp + 8]
push edx
call fcn.101846c0
add esp, 8
jmp 0x10183c37
mov eax, dword [ebp - 0x1064]
mov dword [ebp - 0x108c], eax
jmp 0x1018395e
mov ecx, dword [ebp - 0x10b8]
mov edx, dword [ebp - 0x1054]
lea eax, [edx + ecx + 0x2e]
mov dword [ebp - 0x108c], eax
cmp dword [ebp - 0x1080], 4
jae 0x10183989
mov ecx, dword [ebp - 0x1064]
push ecx
call fcn.1006d9e1
add esp, 4
push 9
mov edx, dword [ebp + 8]
push edx
call fcn.101846c0
add esp, 8
jmp 0x10183c37
mov eax, dword [ebp - 0x108c]
movzx ecx, word [eax]
mov dword [ebp - 0x1128], ecx
mov edx, dword [ebp - 0x108c]
movzx eax, word [edx + 2]
mov dword [ebp - 0x10ac], eax
mov ecx, dword [ebp - 0x10ac]
add ecx, 4
cmp ecx, dword [ebp - 0x1080]
jbe 0x101839db
mov edx, dword [ebp - 0x1064]
push edx
call fcn.1006d9e1
add esp, 4
push 9
mov eax, dword [ebp + 8]
push eax
call fcn.101846c0
add esp, 8
jmp 0x10183c37
cmp dword [ebp - 0x1128], 1
jne 0x10183a00
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x48]
mov dword [edx + 0x34], 1
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x48]
mov dword [ecx + 0x38], 1
jmp 0x10183a31
mov edx, dword [ebp - 0x10ac]
mov eax, dword [ebp - 0x108c]
lea ecx, [eax + edx + 4]
mov dword [ebp - 0x108c], ecx
mov edx, dword [ebp - 0x1080]
sub edx, 4
sub edx, dword [ebp - 0x10ac]
mov dword [ebp - 0x1080], edx
jne 0x1018395e
mov eax, dword [ebp - 0x1064]
push eax
call fcn.1006d9e1
add esp, 4
cmp dword [ebp - 0x1060], 0xffffffff
jne 0x10183a52
cmp dword [ebp - 0x105c], 0
je 0x10183abb
cmp dword [ebp - 0x1074], 0xffffffff
jne 0x10183a64
cmp dword [ebp - 0x1070], 0
je 0x10183abb
mov ecx, dword [ebp - 0x1054]
cmp dword [ecx + 0xa], 0
jne 0x10183a8c
mov edx, dword [ebp - 0x1074]
cmp edx, dword [ebp - 0x1060]
jne 0x10183aa8
mov eax, dword [ebp - 0x1070]
cmp eax, dword [ebp - 0x105c]
jne 0x10183aa8
mov ecx, dword [ebp - 0x1074]
or ecx, dword [ebp - 0x1070]
je 0x10183abb
mov edx, dword [ebp - 0x1060]
or edx, dword [ebp - 0x105c]
jne 0x10183abb
push 9
mov eax, dword [ebp + 8]
push eax
call fcn.101846c0
add esp, 8
jmp 0x10183c37
mov ecx, dword [ebp - 0x1054]
movzx edx, word [ecx + 0x22]
mov dword [ebp - 0x10b0], edx
cmp dword [ebp - 0x10b0], 0xffff
je 0x10183aee
mov eax, dword [ebp - 0x10b0]
cmp eax, dword [ebp - 0x1094]
je 0x10183b01
cmp dword [ebp - 0x10b0], 1
je 0x10183b01
push 0xa
mov ecx, dword [ebp + 8]
push ecx
call fcn.101846c0
add esp, 8
jmp 0x10183c37
cmp dword [ebp - 0x1060], 0xffffffff
jne 0x10183b13
cmp dword [ebp - 0x105c], 0
je 0x10183b7b
mov edx, dword [ebp - 0x1054]
mov eax, dword [edx + 0x2a]
xor ecx, ecx
add eax, 0x1e
adc ecx, 0
add eax, dword [ebp - 0x1060]
adc ecx, dword [ebp - 0x105c]
mov edx, dword [ebp + 8]
mov dword [ebp - 0x111c], eax
mov dword [ebp - 0x1118], ecx
mov dword [ebp - 0x10c8], edx
mov eax, dword [ebp - 0x10c8]
mov ecx, dword [ebp - 0x1118]
cmp ecx, dword [eax + 4]
jb 0x10183b7b
ja 0x10183b68
mov edx, dword [ebp - 0x10c8]
mov eax, dword [ebp - 0x111c]
cmp eax, dword [edx]
jbe 0x10183b7b
push 9
mov ecx, dword [ebp + 8]
push ecx
call fcn.101846c0
add esp, 8
jmp 0x10183c37
mov edx, dword [ebp - 0x1054]
movzx eax, word [edx + 8]
mov dword [ebp - 0x1120], eax
mov ecx, dword [ebp - 0x1120]
and ecx, 0x2000
je 0x10183bac
push 5
mov edx, dword [ebp + 8]
push edx
call fcn.101846c0
add esp, 8
jmp 0x10183c37
mov eax, dword [ebp - 0x1054]
movzx ecx, word [eax + 0x1c]
mov edx, dword [ebp - 0x1054]
movzx eax, word [edx + 0x1e]
lea ecx, [ecx + eax + 0x2e]
mov edx, dword [ebp - 0x1054]
movzx eax, word [edx + 0x20]
add ecx, eax
mov dword [ebp - 0x10b4], ecx
mov ecx, dword [ebp - 0x10b4]
cmp ecx, dword [ebp - 0x1090]
jbe 0x10183bf4
push 9
mov edx, dword [ebp + 8]
push edx
call fcn.101846c0
add esp, 8
jmp 0x10183c37
mov eax, dword [ebp - 0x1090]
sub eax, dword [ebp - 0x10b4]
mov dword [ebp - 0x1090], eax
mov ecx, dword [ebp - 0x1054]
add ecx, dword [ebp - 0x10b4]
mov dword [ebp - 0x1054], ecx
jmp 0x1018364a
cmp dword [ebp - 0x10bc], 0
je 0x10183c32
mov edx, dword [ebp + 8]
push edx
call fcn.10183fd0
add esp, 4
mov eax, 1
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1006d4d0
mov esp, ebp
pop ebp
ret