Function at 0x10ccf600
Capabilities:
Inspect section memory permissions
Resolve function by parsing pe exports

Disassembly:
mov eax, dword [esp + 0xc]
movzx edx, byte [eax + 2]
xor ecx, ecx
mov ch, byte [eax]
sub esp, 0x10
push edi
mov edi, dword [esp + 0x18]
add eax, 4
mov cl, byte [eax - 3]
shl ecx, 8
or ecx, edx
movzx edx, byte [eax - 1]
shl ecx, 8
or ecx, edx
mov dword [edi], ecx
mov ecx, dword [esp + 0x1c]
mov dword [edi + 8], eax
mov eax, edi
mov dword [edi + 4], 0xfffffff0
call fcn.10ccf370
test eax, eax
jne 0x10cd0bf2
mov eax, dword [0x1123d174]
test eax, eax
je 0x10ccf65a
lea ecx, [esp + 0xc]
push ecx
call eax
add esp, 4
push ebx
push ebp
push esi
lea ecx, [ecx]
mov esi, dword [edi + 4]
xor ebx, ebx
cmp esi, ebx
jle 0x10ccf688
mov eax, dword [edi + 8]
movzx edx, byte [eax + 1]
mov dh, byte [eax]
mov ecx, esi
add eax, 2
mov dword [edi + 8], eax
shl edx, cl
mov ecx, dword [edi]
or ecx, edx
add esi, 0xfffffff0
mov dword [edi], ecx
mov dword [edi + 4], esi
mov edx, edi
call fcn.10cca3a0
mov edx, eax
test dl, 0x10
mov dword [esp + 0x10], edx
je 0x10ccf6e5
mov ecx, dword [edi]
mov eax, ecx
shl ecx, 5
mov dword [edi], ecx
add dword [edi + 4], 5
shr eax, 0x1b
lea ecx, [eax + 3]
shl ecx, 7
add ecx, edi
mov dword [edi + 0x168], ecx
lea ecx, [eax + 0x23]
shl ecx, 7
add ecx, edi
mov dword [edi + 0x16c], ecx
mov ecx, dword [edi + 0x178]
shl eax, 7
add ecx, eax
mov dword [edi + 0x170], ecx
mov ecx, dword [edi + 0x17c]
add ecx, eax
mov dword [edi + 0x174], ecx
test dl, 1
je 0x10cd0289
cmp dword [edi + 0x41a0], ebx
je 0x10ccf715
cmp dword [edi + 0x4198], 3
jne 0x10ccf70a
call fcn.10cceec0
mov edx, dword [esp + 0x10]
jmp 0x10ccf739
call fcn.10ccef80
mov edx, dword [esp + 0x10]
jmp 0x10ccf739
mov dword [edi + 0x9c], ebx
mov dword [edi + 0x98], ebx
mov dword [edi + 0xa4], ebx
mov dword [edi + 0xa0], ebx
mov dword [edi + 0x64], ebx
mov dword [edi + 0x60], ebx
mov dword [edi + 0x6c], ebx
mov dword [edi + 0x68], ebx
test dl, 0x20
mov eax, dword [edi + 0x1c]
je 0x10ccf74e
lea edx, [eax + eax]
mov dword [esp + 0x24], eax
mov dword [esp + 0x2c], edx
jmp 0x10ccf75d
lea ecx, [eax*8]
mov dword [esp + 0x24], ecx
mov dword [esp + 0x2c], eax
mov ebx, dword [edi + 0x18]
mov ebp, dword [edi + 0xc]
mov ecx, dword [edi + 4]
add ebp, ebx
test ecx, ecx
jle 0x10ccf789
mov eax, dword [edi + 8]
movzx edx, byte [eax + 1]
mov dh, byte [eax]
mov esi, dword [edi]
add eax, 2
mov dword [edi + 8], eax
shl edx, cl
or esi, edx
add ecx, 0xfffffff0
mov dword [edi], esi
mov dword [edi + 4], ecx
mov edx, edi
call fcn.10cca7a0
add word [edi + 0xc4], ax
mov ax, word [edi + 0xc4]
lea esi, [edi + 0xca]
mov word [esi], ax
mov eax, dword [edi + 0x41b4]
test eax, eax
je 0x10ccf7c5
cmp dword [edi + 0x4190], 4
je 0x10ccf7ee
push edi
call fcn.10ccb0a0
add esp, 4
jmp 0x10ccf7ee
mov eax, dword [edi + 0x41a4]
test eax, eax
je 0x10ccf7de
mov eax, dword [edi + 0x168]
push eax
push edi
call fcn.10ccabe0
jmp 0x10ccf7eb
mov ecx, dword [edi + 0x168]
push ecx
push edi
call fcn.10cca9a0
add esp, 8
mov edx, dword [esp + 0x2c]
push edx
push ebp
push esi
call dword [0x112c41e0]
mov ecx, dword [edi + 4]
add esp, 0xc
test ecx, ecx
jle 0x10ccf81e
mov eax, dword [edi + 8]
movzx edx, byte [eax + 1]
mov dh, byte [eax]
add eax, 2
mov dword [edi + 8], eax
shl edx, cl
or dword [edi], edx
add ecx, 0xfffffff0
mov dword [edi + 4], ecx
mov edx, edi
call fcn.10cca7a0
add word [edi + 0xc4], ax
mov ax, word [edi + 0xc4]
mov word [esi], ax
mov eax, dword [edi + 0x41b4]
test eax, eax
je 0x10ccf854
cmp dword [edi + 0x4190], 4
je 0x10ccf87d
push edi
call fcn.10ccb0a0
add esp, 4
jmp 0x10ccf87d
mov eax, dword [edi + 0x41a4]
test eax, eax
je 0x10ccf86d
mov eax, dword [edi + 0x168]
push eax
push edi
call fcn.10ccabe0
jmp 0x10ccf87a
mov ecx, dword [edi + 0x168]
push ecx
push edi
call fcn.10cca9a0
add esp, 8
mov edx, dword [esp + 0x2c]
push edx
lea eax, [ebp + 8]
push eax
push esi
call dword [0x112c41e0]
mov ecx, dword [edi + 4]
add esp, 0xc
test ecx, ecx
jle 0x10ccf8b0
mov eax, dword [edi + 8]
movzx edx, byte [eax + 1]
mov dh, byte [eax]
add eax, 2
mov dword [edi + 8], eax
shl edx, cl
or dword [edi], edx
add ecx, 0xfffffff0
mov dword [edi + 4], ecx
mov edx, edi
call fcn.10cca7a0
add word [edi + 0xc4], ax
mov ax, word [edi + 0xc4]
mov word [esi], ax
mov eax, dword [edi + 0x41b4]
test eax, eax
je 0x10ccf8e6
cmp dword [edi + 0x4190], 4
je 0x10ccf90f
push edi
call fcn.10ccb0a0
add esp, 4
jmp 0x10ccf90f
mov eax, dword [edi + 0x41a4]
test eax, eax
je 0x10ccf8ff
mov eax, dword [edi + 0x168]
push eax
push edi
call fcn.10ccabe0
jmp 0x10ccf90c
mov ecx, dword [edi + 0x168]
push ecx
push edi
call fcn.10cca9a0
add esp, 8
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x2c]
push eax
add ebp, edx
push ebp
push esi
call dword [0x112c41e0]
mov ecx, dword [edi + 4]
add esp, 0xc
test ecx, ecx
jle 0x10ccf945
mov eax, dword [edi + 8]
movzx edx, byte [eax + 1]
mov dh, byte [eax]
add eax, 2
mov dword [edi + 8], eax
shl edx, cl
or dword [edi], edx
add ecx, 0xfffffff0
mov dword [edi + 4], ecx
mov edx, edi
call fcn.10cca7a0
add word [edi + 0xc4], ax
mov ax, word [edi + 0xc4]
mov word [esi], ax
mov eax, dword [edi + 0x41b4]
test eax, eax
je 0x10ccf97b
cmp dword [edi + 0x4190], 4
je 0x10ccf9a4
push edi
call fcn.10ccb0a0
add esp, 4
jmp 0x10ccf9a4
mov eax, dword [edi + 0x41a4]
test eax, eax
je 0x10ccf994
mov eax, dword [edi + 0x168]
push eax
push edi
call fcn.10ccabe0
jmp 0x10ccf9a1
mov ecx, dword [edi + 0x168]
push ecx
push edi
call fcn.10cca9a0
add esp, 8
mov edx, dword [esp + 0x2c]
push edx
add ebp, 8
push ebp
push esi
call dword [0x112c41e0]
mov eax, dword [edi + 0x418c]
mov ebp, dword [edi + 0x10]
add esp, 0xc
test eax, eax
jne 0x10ccfb4f
mov ecx, dword [edi + 4]
mov eax, dword [edi + 0x20]
sar ebx, 1
add ebp, ebx
test ecx, ecx
mov dword [esp + 0x2c], eax
jle 0x10ccf9fa
mov eax, dword [edi + 8]
movzx edx, byte [eax + 1]
mov dh, byte [eax]
mov eax, dword [edi]
shl edx, cl
or eax, edx
mov dword [edi], eax
mov eax, dword [edi + 8]
add eax, 2
add ecx, 0xfffffff0
mov dword [edi + 8], eax
mov dword [edi + 4], ecx
mov edx, edi
call fcn.10cca8a0
add word [edi + 0xc6], ax
mov ax, word [edi + 0xc6]
mov word [esi], ax
mov eax, dword [edi + 0x41b4]
test eax, eax
je 0x10ccfa30
cmp dword [edi + 0x4190], 4
je 0x10ccfa59
push edi
call fcn.10ccb0a0
add esp, 4
jmp 0x10ccfa59
mov eax, dword [edi + 0x41a4]
test eax, eax
je 0x10ccfa49
mov eax, dword [edi + 0x170]
push eax
push edi
call fcn.10ccabe0
jmp 0x10ccfa56
mov ecx, dword [edi + 0x170]
push ecx
push edi
call fcn.10cca9a0
add esp, 8
mov edx, dword [esp + 0x2c]
push edx
push ebp
push esi
call dword [0x112c41e0]
mov ebp, dword [edi + 0x14]
mov ecx, dword [edi + 4]
mov eax, dword [edi + 0x20]
add esp, 0xc
add ebp, ebx
test ecx, ecx
mov dword [esp + 0x2c], eax
jle 0x10ccfa99
mov eax, dword [edi + 8]
movzx edx, byte [eax + 1]
mov dh, byte [eax]
mov ebx, dword [edi]
add eax, 2
mov dword [edi + 8], eax
shl edx, cl
or ebx, edx
add ecx, 0xfffffff0
mov dword [edi], ebx
mov dword [edi + 4], ecx
mov edx, edi
call fcn.10cca8a0
add word [edi + 0xc8], ax
mov ax, word [edi + 0xc8]
mov word [esi], ax
mov eax, dword [edi + 0x41b4]
test eax, eax
je 0x10ccfacf
cmp dword [edi + 0x4190], 4
je 0x10ccfaf8
push edi
call fcn.10ccb0a0
add esp, 4
jmp 0x10ccfaf8
mov eax, dword [edi + 0x41a4]
test eax, eax
je 0x10ccfae8
mov eax, dword [edi + 0x170]
push eax
push edi
call fcn.10ccabe0
jmp 0x10ccfaf5
mov ecx, dword [edi + 0x170]
push ecx
push edi
call fcn.10cca9a0
add esp, 8
mov edx, dword [esp + 0x2c]
push edx
push ebp
push esi
call dword [0x112c41e0]
mov eax, dword [edi + 0x4190]
add esp, 0xc
cmp eax, 4
jne 0x10cd0afc
mov esi, dword [edi + 4]
test esi, esi
jle 0x10ccfb3d
mov eax, dword [edi + 8]
movzx edx, byte [eax + 1]
mov dh, byte [eax]
mov ecx, esi
add eax, 2
mov dword [edi + 8], eax
shl edx, cl
mov ecx, dword [edi]
or ecx, edx
add esi, 0xfffffff0
mov dword [edi], ecx
mov dword [edi + 4], esi
mov ecx, dword [edi]
mov eax, dword [edi + 4]
shl ecx, 1
inc eax
mov dword [edi], ecx
mov dword [edi + 4], eax
jmp 0x10cd0afc
cmp eax, 1
jne 0x10ccfdc8
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x2c]
mov eax, ebx
mov ebx, dword [edi + 0x14]
sar ecx, 1
sar eax, 1
mov dword [esp + 0x24], ecx
mov ecx, dword [edi + 4]
sar edx, 1
add ebp, eax
add ebx, eax
test ecx, ecx
mov dword [esp + 0x2c], edx
jle 0x10ccfb97
mov eax, dword [edi + 8]
movzx edx, byte [eax + 1]
mov dh, byte [eax]
add eax, 2
mov dword [edi + 8], eax
shl edx, cl
or dword [edi], edx
add ecx, 0xfffffff0
mov dword [edi + 4], ecx
mov edx, edi
call fcn.10cca8a0
add word [edi + 0xc6], ax
mov ax, word [edi + 0xc6]
mov word [esi], ax
mov eax, dword [edi + 0x41b4]
test eax, eax
je 0x10ccfbcd
cmp dword [edi + 0x4190], 4
je 0x10ccfbf6
push edi
call fcn.10ccb0a0
add esp, 4
jmp 0x10ccfbf6
mov eax, dword [edi + 0x41a4]
test eax, eax
je 0x10ccfbe6
mov eax, dword [edi + 0x170]
push eax
push edi
call fcn.10ccabe0
jmp 0x10ccfbf3
mov ecx, dword [edi + 0x170]
push ecx
push edi
call fcn.10cca9a0
add esp, 8
mov edx, dword [esp + 0x2c]
push edx
push ebp
push esi
call dword [0x112c41e0]
mov ecx, dword [edi + 4]
add esp, 0xc
test ecx, ecx
jle 0x10ccfc26
mov eax, dword [edi + 8]
movzx edx, byte [eax + 1]
mov dh, byte [eax]
add eax, 2
mov dword [edi + 8], eax
shl edx, cl
or dword [edi], edx
add ecx, 0xfffffff0
mov dword [edi + 4], ecx
mov edx, edi
call fcn.10cca8a0
add word [edi + 0xc8], ax
mov ax, word [edi + 0xc8]
mov word [esi], ax
mov eax, dword [edi + 0x41b4]
test eax, eax
je 0x10ccfc5c
cmp dword [edi + 0x4190], 4
je 0x10ccfc85
push edi
call fcn.10ccb0a0
add esp, 4
jmp 0x10ccfc85
mov eax, dword [edi + 0x41a4]
test eax, eax
je 0x10ccfc75
mov eax, dword [edi + 0x170]
push eax
push edi
call fcn.10ccabe0
jmp 0x10ccfc82
mov ecx, dword [edi + 0x170]
push ecx
push edi
call fcn.10cca9a0
add esp, 8
mov edx, dword [esp + 0x2c]
push edx
push ebx
push esi
call dword [0x112c41e0]
mov ecx, dword [edi + 4]
add esp, 0xc
test ecx, ecx
jle 0x10ccfcb5
mov eax, dword [edi + 8]
movzx edx, byte [eax + 1]
mov dh, byte [eax]
add eax, 2
mov dword [edi + 8], eax
shl edx, cl
or dword [edi], edx
add ecx, 0xfffffff0
mov dword [edi + 4], ecx
mov edx, edi
call fcn.10cca8a0
add word [edi + 0xc6], ax
mov ax, word [edi + 0xc6]
mov word [esi], ax
mov eax, dword [edi + 0x41b4]
test eax, eax
je 0x10ccfceb
cmp dword [edi + 0x4190], 4
je 0x10ccfd14
push edi
call fcn.10ccb0a0
add esp, 4
jmp 0x10ccfd14
mov eax, dword [edi + 0x41a4]
test eax, eax
je 0x10ccfd04
mov eax, dword [edi + 0x170]
push eax
push edi
call fcn.10ccabe0
jmp 0x10ccfd11
mov ecx, dword [edi + 0x170]
push ecx
push edi
call fcn.10cca9a0
add esp, 8
mov edx, dword [esp + 0x2c]
mov eax, dword [esp + 0x24]
push edx
add ebp, eax
push ebp
push esi
call dword [0x112c41e0]
mov ecx, dword [edi + 4]
add esp, 0xc
test ecx, ecx
jle 0x10ccfd4e
mov eax, dword [edi + 8]
movzx edx, byte [eax + 1]
mov dh, byte [eax]
mov ebp, dword [edi]
add eax, 2
mov dword [edi + 8], eax
shl edx, cl
or ebp, edx
add ecx, 0xfffffff0
mov dword [edi], ebp
mov dword [edi + 4], ecx
mov edx, edi
call fcn.10cca8a0
add word [edi + 0xc8], ax
mov ax, word [edi + 0xc8]
mov word [esi], ax
mov eax, dword [edi + 0x41b4]
test eax, eax
je 0x10ccfd84
cmp dword [edi + 0x4190], 4
je 0x10ccfdad
push edi
call fcn.10ccb0a0
add esp, 4
jmp 0x10ccfdad
mov eax, dword [edi + 0x41a4]
test eax, eax
je 0x10ccfd9d
mov eax, dword [edi + 0x170]
push eax
push edi
call fcn.10ccabe0
jmp 0x10ccfdaa
mov ecx, dword [edi + 0x170]
push ecx
push edi
call fcn.10cca9a0
add esp, 8
mov edx, dword [esp + 0x2c]
mov eax, dword [esp + 0x24]
push edx
add ebx, eax
push ebx
push esi
call dword [0x112c41e0]
add esp, 0xc
jmp 0x10cd0afc
mov eax, dword [edi + 0x14]
mov ecx, dword [edi + 4]
add eax, ebx
add ebp, ebx
test ecx, ecx
mov dword [esp + 0x14], eax
jle 0x10ccfdf7
mov eax, dword [edi + 8]
movzx edx, byte [eax + 1]
mov dh, byte [eax]
mov ebx, dword [edi]
add eax, 2
mov dword [edi + 8], eax
shl edx, cl
or ebx, edx
add ecx, 0xfffffff0
mov dword [edi], ebx
mov dword [edi + 4], ecx
mov edx, edi
call fcn.10cca8a0
add word [edi + 0xc6], ax
mov ax, word [edi + 0xc6]
mov word [esi], ax
mov eax, dword [edi + 0x41b4]
test eax, eax
je 0x10ccfe2d
cmp dword [edi + 0x4190], 4
je 0x10ccfe56
push edi
call fcn.10ccb0a0
add esp, 4
jmp 0x10ccfe56
mov eax, dword [edi + 0x41a4]
test eax, eax
je 0x10ccfe46
mov eax, dword [edi + 0x170]
push eax
push edi
call fcn.10ccabe0
jmp 0x10ccfe53
mov ecx, dword [edi + 0x170]
push ecx
push edi
call fcn.10cca9a0
add esp, 8
mov ebx, dword [esp + 0x2c]
push ebx
push ebp
push esi
call dword [0x112c41e0]
mov ecx, dword [edi + 4]
add esp, 0xc
test ecx, ecx
jle 0x10ccfe86
mov eax, dword [edi + 8]
movzx edx, byte [eax + 1]
mov dh, byte [eax]
add eax, 2
mov dword [edi + 8], eax
shl edx, cl
or dword [edi], edx
add ecx, 0xfffffff0
mov dword [edi + 4], ecx
mov edx, edi
call fcn.10cca8a0
add word [edi + 0xc8], ax
mov ax, word [edi + 0xc8]
mov word [esi], ax
mov eax, dword [edi + 0x41b4]
test eax, eax
je 0x10ccfebc
cmp dword [edi + 0x4190], 4
je 0x10ccfee5
push edi
call fcn.10ccb0a0
add esp, 4
jmp 0x10ccfee5
mov eax, dword [edi + 0x41a4]
test eax, eax
je 0x10ccfed5
mov eax, dword [edi + 0x170]
push eax
push edi
call fcn.10ccabe0
jmp 0x10ccfee2
mov ecx, dword [edi + 0x170]
push ecx
push edi
call fcn.10cca9a0
add esp, 8
mov edx, dword [esp + 0x14]
push ebx
push edx
push esi
call dword [0x112c41e0]
mov ecx, dword [edi + 4]
add esp, 0xc
test ecx, ecx
jle 0x10ccff19
mov eax, dword [edi + 8]
movzx edx, byte [eax + 1]
mov dh, byte [eax]
mov ebx, dword [edi]
add eax, 2
mov dword [edi + 8], eax
shl edx, cl
or ebx, edx
add ecx, 0xfffffff0
mov dword [edi], ebx
mov dword [edi + 4], ecx
mov edx, edi
call fcn.10cca8a0
add word [edi + 0xc6], ax
mov ax, word [edi + 0xc6]
mov word [esi], ax
mov eax, dword [edi + 0x41b4]
test eax, eax
je 0x10ccff4f
cmp dword [edi + 0x4190], 4
je 0x10ccff78
push edi
call fcn.10ccb0a0
add esp, 4
jmp 0x10ccff78
mov eax, dword [edi + 0x41a4]
test eax, eax
je 0x10ccff68
mov eax, dword [edi + 0x170]
push eax
push edi
call fcn.10ccabe0
jmp 0x10ccff75
mov ecx, dword [edi + 0x170]
push ecx
push edi
call fcn.10cca9a0
add esp, 8
mov ebx, dword [esp + 0x24]
mov edx, dword [esp + 0x2c]
lea eax, [ebx + ebp]
push edx
push eax
push esi
mov dword [esp + 0x30], eax
call dword [0x112c41e0]
mov ecx, dword [edi + 4]
add esp, 0xc
test ecx, ecx
jle 0x10ccffb3
mov eax, dword [edi + 8]
movzx edx, byte [eax + 1]
mov dh, byte [eax]
add eax, 2
mov dword [edi + 8], eax
shl edx, cl
or dword [edi], edx
add ecx, 0xfffffff0
mov dword [edi + 4], ecx
mov edx, edi
call fcn.10cca8a0
add word [edi + 0xc8], ax
mov ax, word [edi + 0xc8]
mov word [esi], ax
mov eax, dword [edi + 0x41b4]
test eax, eax
je 0x10ccffe9
cmp dword [edi + 0x4190], 4
je 0x10cd0012
push edi
call fcn.10ccb0a0
add esp, 4
jmp 0x10cd0012
mov eax, dword [edi + 0x41a4]
test eax, eax
je 0x10cd0002
mov eax, dword [edi + 0x170]
push eax
push edi
call fcn.10ccabe0
jmp 0x10cd000f
mov ecx, dword [edi + 0x170]
push ecx
push edi
call fcn.10cca9a0
add esp, 8
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x2c]
add ebx, edx
push eax
push ebx
push esi
mov dword [esp + 0x28], ebx
call dword [0x112c41e0]
mov ecx, dword [edi + 4]
add esp, 0xc
test ecx, ecx
jle 0x10cd0050
mov eax, dword [edi + 8]
movzx edx, byte [eax + 1]
mov dh, byte [eax]
mov ebx, dword [edi]
add eax, 2
mov dword [edi + 8], eax
shl edx, cl
or ebx, edx
add ecx, 0xfffffff0
mov dword [edi], ebx
mov dword [edi + 4], ecx
mov edx, edi
call fcn.10cca8a0
add word [edi + 0xc6], ax
mov ax, word [edi + 0xc6]
mov word [esi], ax
mov eax, dword [edi + 0x41b4]
test eax, eax
je 0x10cd0086
cmp dword [edi + 0x4190], 4
je 0x10cd00af
push edi
call fcn.10ccb0a0
add esp, 4
jmp 0x10cd00af
mov eax, dword [edi + 0x41a4]
test eax, eax
je 0x10cd009f
mov eax, dword [edi + 0x170]
push eax
push edi
call fcn.10ccabe0
jmp 0x10cd00ac
mov ecx, dword [edi + 0x170]
push ecx
push edi
call fcn.10cca9a0
add esp, 8
mov ebx, dword [esp + 0x2c]
push ebx
add ebp, 8
push ebp
push esi
call dword [0x112c41e0]
mov ecx, dword [edi + 4]
add esp, 0xc
test ecx, ecx
jle 0x10cd00e6
mov eax, dword [edi + 8]
movzx edx, byte [eax + 1]
mov dh, byte [eax]
mov ebp, dword [edi]
add eax, 2
mov dword [edi + 8], eax
shl edx, cl
or ebp, edx
add ecx, 0xfffffff0
mov dword [edi], ebp
mov dword [edi + 4], ecx
mov edx, edi
call fcn.10cca8a0
add word [edi + 0xc8], ax
mov ax, word [edi + 0xc8]
mov word [esi], ax
mov eax, dword [edi + 0x41b4]
test eax, eax
je 0x10cd011c
cmp dword [edi + 0x4190], 4
je 0x10cd0145
push edi
call fcn.10ccb0a0
add esp, 4
jmp 0x10cd0145
mov eax, dword [edi + 0x41a4]
test eax, eax
je 0x10cd0135
mov eax, dword [edi + 0x170]
push eax
push edi
call fcn.10ccabe0
jmp 0x10cd0142
mov ecx, dword [edi + 0x170]
push ecx
push edi
call fcn.10cca9a0
add esp, 8
mov edx, dword [esp + 0x14]
push ebx
add edx, 8
push edx
push esi
call dword [0x112c41e0]
mov ecx, dword [edi + 4]
add esp, 0xc
test ecx, ecx
jle 0x10cd017c
mov eax, dword [edi + 8]
movzx edx, byte [eax + 1]
mov dh, byte [eax]
mov ebp, dword [edi]
add eax, 2
mov dword [edi + 8], eax
shl edx, cl
or ebp, edx
add ecx, 0xfffffff0
mov dword [edi], ebp
mov dword [edi + 4], ecx
mov edx, edi
call fcn.10cca8a0
add word [edi + 0xc6], ax
mov ax, word [edi + 0xc6]
mov word [esi], ax
mov eax, dword [edi + 0x41b4]
test eax, eax
je 0x10cd01b2
cmp dword [edi + 0x4190], 4
je 0x10cd01db
push edi
call fcn.10ccb0a0
add esp, 4
jmp 0x10cd01db
mov eax, dword [edi + 0x41a4]
test eax, eax
je 0x10cd01cb
mov eax, dword [edi + 0x170]
push eax
push edi
call fcn.10ccabe0
jmp 0x10cd01d8
mov ecx, dword [edi + 0x170]
push ecx
push edi
call fcn.10cca9a0
add esp, 8
mov edx, dword [esp + 0x24]
push ebx
add edx, 8
push edx
push esi
call dword [0x112c41e0]
mov ecx, dword [edi + 4]
add esp, 0xc
test ecx, ecx
jle 0x10cd0212
mov eax, dword [edi + 8]
movzx edx, byte [eax + 1]
mov dh, byte [eax]
mov ebp, dword [edi]
add eax, 2
mov dword [edi + 8], eax
shl edx, cl
or ebp, edx
add ecx, 0xfffffff0
mov dword [edi], ebp
mov dword [edi + 4], ecx
mov edx, edi
call fcn.10cca8a0
add word [edi + 0xc8], ax
mov ax, word [edi + 0xc8]
mov word [esi], ax
mov eax, dword [edi + 0x41b4]
test eax, eax
je 0x10cd0248
cmp dword [edi + 0x4190], 4
je 0x10cd0271
push edi
call fcn.10ccb0a0
add esp, 4
jmp 0x10cd0271
mov eax, dword [edi + 0x41a4]
test eax, eax
je 0x10cd0261
mov eax, dword [edi + 0x170]
push eax
push edi
call fcn.10ccabe0
jmp 0x10cd026e
mov ecx, dword [edi + 0x170]
push ecx
push edi
call fcn.10cca9a0
add esp, 8
mov edx, dword [esp + 0x1c]
push ebx
add edx, 8
push edx
push esi
call dword [0x112c41e0]
add esp, 0xc
jmp 0x10cd0afc
mov eax, edx
sar eax, 6
mov ebp, dword [edi + eax*4 + 0xb0]
mov esi, edx
and esi, 8
je 0x10cd02af
push 0x112c4200
lea ecx, [edi + 0x78]
push ecx
push edi
call ebp
mov edx, dword [esp + 0x1c]
add esp, 0xc
test dl, 4
je 0x10cd02d1
cmp esi, ebx
mov eax, 0x112c4220
jne 0x10cd02c2
mov eax, 0x112c4200
push eax
lea edx, [edi + 0x40]
push edx
push edi
call ebp
mov edx, dword [esp + 0x1c]
add esp, 0xc
test dl, 2
je 0x10cd0ae2
test dl, 0x20
mov eax, dword [edi + 0x1c]
je 0x10cd02eb
mov dword [esp + 0x24], eax
lea ebx, [eax + eax]
jmp 0x10cd02f8
lea ecx, [eax*8]
mov dword [esp + 0x24], ecx
mov ebx, eax
mov eax, edi
call fcn.10cca730
mov ecx, eax
mov eax, dword [edi + 0x418c]
test eax, eax
mov dword [esp + 0x2c], ecx
jne 0x10cd04d0
mov ebp, dword [edi + 0x18]
mov esi, dword [edi + 0xc]
add esi, ebp
test cl, 1
je 0x10cd035c
mov eax, dword [edi + 0x41b4]
test eax, eax
je 0x10cd0335
push edi
call fcn.10ccb2c0
add esp, 4
jmp 0x10cd0345
mov edx, dword [edi + 0x16c]
push edx
push edi
call fcn.10ccae00
add esp, 8
push ebx
push esi
lea ecx, [edi + 0xca]
push ecx
push eax
call dword [0x112c41e4]
mov ecx, dword [esp + 0x3c]
add esp, 0x10
test cl, 2
je 0x10cd03a0
mov eax, dword [edi + 0x41b4]
test eax, eax
je 0x10cd0376
push edi
call fcn.10ccb2c0
add esp, 4
jmp 0x10cd0386
mov edx, dword [edi + 0x16c]
push edx
push edi
call fcn.10ccae00
add esp, 8
push ebx
lea ecx, [esi + 8]
push ecx
lea edx, [edi + 0xca]
push edx
push eax
call dword [0x112c41e4]
mov ecx, dword [esp + 0x3c]
add esp, 0x10
test cl, 4
je 0x10cd03e8
mov eax, dword [edi + 0x41b4]
test eax, eax
je 0x10cd03ba
push edi
call fcn.10ccb2c0
add esp, 4
jmp 0x10cd03ca
mov eax, dword [edi + 0x16c]
push eax
push edi
call fcn.10ccae00
add esp, 8
mov ecx, dword [esp + 0x24]
push ebx
lea edx, [esi + ecx]
push edx
lea ecx, [edi + 0xca]
push ecx
push eax
call dword [0x112c41e4]
mov ecx, dword [esp + 0x3c]
add esp, 0x10
test cl, 8
je 0x10cd0431
mov eax, dword [edi + 0x41b4]
test eax, eax
je 0x10cd0402
push edi
call fcn.10ccb2c0
add esp, 4
jmp 0x10cd0412
mov edx, dword [edi + 0x16c]
push edx
push edi
call fcn.10ccae00
add esp, 8
mov ecx, dword [esp + 0x24]
push ebx
lea edx, [esi + ecx + 8]
push edx
lea ecx, [edi + 0xca]
push ecx
push eax
call dword [0x112c41e4]
mov ecx, dword [esp + 0x3c]
add esp, 0x10
test cl, 0x10
je 0x10cd047e
mov ecx, dword [edi + 0x10]
mov eax, dword [edi + 0x41b4]
mov ebx, dword [edi + 0x20]
mov esi, ebp
sar esi, 1
add esi, ecx
test eax, eax
je 0x10cd0457
push edi
call fcn.10ccb2c0
add esp, 4
jmp 0x10cd0467
mov edx, dword [edi + 0x174]
push edx
push edi
call fcn.10ccae00
add esp, 8
push ebx
push esi
lea ecx, [edi + 0xca]
push ecx
push eax
call dword [0x112c41e4]
mov ecx, dword [esp + 0x3c]
add esp, 0x10
test cl, 0x20
je 0x10cd0ae2
mov ecx, dword [edi + 0x14]
mov eax, dword [edi + 0x41b4]
mov esi, dword [edi + 0x20]
sar ebp, 1
add ebp, ecx
test eax, eax
je 0x10cd04b2
push edi
call fcn.10ccb2c0
add esp, 4
push esi
push ebp
lea ecx, [edi + 0xca]
push ecx
jmp 0x10cd0ad8
mov edx, dword [edi + 0x174]
push edx
push edi
call fcn.10ccae00
add esp, 8
push esi
push ebp
lea ecx, [edi + 0xca]
push ecx
jmp 0x10cd0ad8
cmp eax, 1
mov eax, dword [edi]
mov edx, eax
jne 0x10cd0757
mov esi, dword [edi + 4]
mov ebp, dword [edi + 0x18]
add esi, 2
and edx, 0xc0000000
mov dword [edi + 4], esi
mov esi, dword [edi + 0xc]
or ecx, edx
shl eax, 2
add esi, ebp
test cl, 1
mov dword [esp + 0x2c], ecx
mov dword [edi], eax
je 0x10cd0540
mov eax, dword [edi + 0x41b4]
test eax, eax
je 0x10cd0519
push edi
call fcn.10ccb2c0
add esp, 4
jmp 0x10cd0529
mov ecx, dword [edi + 0x16c]
push ecx
push edi
call fcn.10ccae00
add esp, 8
push ebx
push esi
lea edx, [edi + 0xca]
push edx
push eax
call dword [0x112c41e4]
mov ecx, dword [esp + 0x3c]
add esp, 0x10
test cl, 2
je 0x10cd0584
mov eax, dword [edi + 0x41b4]
test eax, eax
je 0x10cd055a
push edi
call fcn.10ccb2c0
add esp, 4
jmp 0x10cd056a
mov eax, dword [edi + 0x16c]
push eax
push edi
call fcn.10ccae00
add esp, 8
push ebx
lea ecx, [esi + 8]
push ecx
lea edx, [edi + 0xca]
push edx
push eax
call dword [0x112c41e4]
mov ecx, dword [esp + 0x3c]
add esp, 0x10
test cl, 4
je 0x10cd05cc
mov eax, dword [edi + 0x41b4]
test eax, eax
je 0x10cd059e
push edi
call fcn.10ccb2c0
add esp, 4
jmp 0x10cd05ae
mov eax, dword [edi + 0x16c]
push eax
push edi
call fcn.10ccae00
add esp, 8
mov ecx, dword [esp + 0x24]
push ebx
lea edx, [esi + ecx]
push edx
lea ecx, [edi + 0xca]
push ecx
push eax
call dword [0x112c41e4]
mov ecx, dword [esp + 0x3c]
add esp, 0x10
test cl, 8
je 0x10cd0615
mov eax, dword [edi + 0x41b4]
test eax, eax
je 0x10cd05e6
push edi
call fcn.10ccb2c0
add esp, 4
jmp 0x10cd05f6
mov edx, dword [edi + 0x16c]
push edx
push edi
call fcn.10ccae00
add esp, 8
mov ecx, dword [esp + 0x24]
push ebx
lea edx, [esi + ecx + 8]
push edx
lea ecx, [edi + 0xca]
push ecx
push eax
call dword [0x112c41e4]
mov ecx, dword [esp + 0x3c]
add esp, 0x10
mov edx, dword [esp + 0x24]
lea eax, [edx + ebp]
sar eax, 1
sar ebx, 1
test cl, 0x10
mov dword [esp + 0x24], eax
je 0x10cd0672
mov ecx, dword [edi + 0x10]
mov eax, dword [edi + 0x41b4]
mov esi, ebp
sar esi, 1
add esi, ecx
test eax, eax
je 0x10cd0647
push edi
call fcn.10ccb2c0
add esp, 4
jmp 0x10cd0657
mov eax, dword [edi + 0x174]
push eax
push edi
call fcn.10ccae00
add esp, 8
push ebx
push esi
lea ecx, [edi + 0xca]
push ecx
push eax
call dword [0x112c41e4]
mov ecx, dword [esp + 0x3c]
mov eax, dword [esp + 0x34]
add esp, 0x10
test cl, 0x20
je 0x10cd06be
mov ecx, dword [edi + 0x14]
mov eax, dword [edi + 0x41b4]
sar ebp, 1
add ebp, ecx
test eax, eax
je 0x10cd0693
push edi
call fcn.10ccb2c0
add esp, 4
jmp 0x10cd06a3
mov edx, dword [edi + 0x174]
push edx
push edi
call fcn.10ccae00
add esp, 8
push ebx
push ebp
lea ecx, [edi + 0xca]
push ecx
push eax
call dword [0x112c41e4]
mov ecx, dword [esp + 0x3c]
mov eax, dword [esp + 0x34]
add esp, 0x10
test ecx, ecx
jns 0x10cd0703
mov esi, dword [edi + 0x10]
add esi, eax
mov eax, dword [edi + 0x41b4]
test eax, eax
je 0x10cd06dc
push edi
call fcn.10ccb2c0
add esp, 4
jmp 0x10cd06ec
mov edx, dword [edi + 0x174]
push edx
push edi
call fcn.10ccae00
add esp, 8
push ebx
push esi
lea ecx, [edi + 0xca]
push ecx
push eax
call dword [0x112c41e4]
mov ecx, dword [esp + 0x3c]
add esp, 0x10
test ecx, 0x40000000
je 0x10cd0ae2
mov esi, dword [edi + 0x14]
mov ecx, dword [esp + 0x24]
mov eax, dword [edi + 0x41b4]
add esi, ecx
test eax, eax
je 0x10cd0739
push edi
call fcn.10ccb2c0
add esp, 4
push ebx
push esi
lea ecx, [edi + 0xca]
push ecx
jmp 0x10cd0ad8
mov edx, dword [edi + 0x174]
push edx
push edi
call fcn.10ccae00
add esp, 8
push ebx
push esi
lea ecx, [edi + 0xca]
push ecx
jmp 0x10cd0ad8
mov esi, dword [edi + 0xc]
mov ebp, dword [edi + 0x10]
shl eax, 6
mov dword [edi], eax
mov eax, dword [edi + 4]
and edx, 0xfc000000
add eax, 6
or ecx, edx
mov edx, dword [edi + 0x14]
mov dword [edi + 4], eax
mov eax, dword [edi + 0x18]
add edx, eax
add esi, eax
add ebp, eax
test cl, 1
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x14], edx
je 0x10cd07c8
mov eax, dword [edi + 0x41b4]
test eax, eax
je 0x10cd07a1
push edi
call fcn.10ccb2c0
add esp, 4
jmp 0x10cd07b1
mov eax, dword [edi + 0x16c]
push eax
push edi
call fcn.10ccae00
add esp, 8
push ebx
push esi
lea ecx, [edi + 0xca]
push ecx
push eax
call dword [0x112c41e4]
mov ecx, dword [esp + 0x3c]
add esp, 0x10
test cl, 2
je 0x10cd080c
mov eax, dword [edi + 0x41b4]
test eax, eax
je 0x10cd07e2
push edi
call fcn.10ccb2c0
add esp, 4
jmp 0x10cd07f2
mov edx, dword [edi + 0x16c]
push edx
push edi
call fcn.10ccae00
add esp, 8
push ebx
lea ecx, [esi + 8]
push ecx
lea edx, [edi + 0xca]
push edx
push eax
call dword [0x112c41e4]
mov ecx, dword [esp + 0x3c]
add esp, 0x10
test cl, 4
je 0x10cd0854
mov eax, dword [edi + 0x41b4]
test eax, eax
je 0x10cd0826
push edi
call fcn.10ccb2c0
add esp, 4
jmp 0x10cd0836
mov eax, dword [edi + 0x16c]
push eax
push edi
call fcn.10ccae00
add esp, 8
mov ecx, dword [esp + 0x24]
push ebx
lea edx, [esi + ecx]
push edx
lea ecx, [edi + 0xca]
push ecx
push eax
call dword [0x112c41e4]
mov ecx, dword [esp + 0x3c]
add esp, 0x10
test cl, 8
je 0x10cd089d
mov eax, dword [edi + 0x41b4]
test eax, eax
je 0x10cd086e
push edi
call fcn.10ccb2c0
add esp, 4
jmp 0x10cd087e
mov edx, dword [edi + 0x16c]
push edx
push edi
call fcn.10ccae00
add esp, 8
mov ecx, dword [esp + 0x24]
push ebx
lea edx, [esi + ecx + 8]
push edx
lea ecx, [edi + 0xca]
push ecx
push eax
call dword [0x112c41e4]
mov ecx, dword [esp + 0x3c]
add esp, 0x10
test cl, 0x10
je 0x10cd08de
mov eax, dword [edi + 0x41b4]
test eax, eax
je 0x10cd08b7
push edi
call fcn.10ccb2c0
add esp, 4
jmp 0x10cd08c7
mov edx, dword [edi + 0x174]
push edx
push edi
call fcn.10ccae00
add esp, 8
push ebx
push ebp
lea ecx, [edi + 0xca]
push ecx
push eax
call dword [0x112c41e4]
mov ecx, dword [esp + 0x3c]
add esp, 0x10
test cl, 0x20
je 0x10cd0923
mov eax, dword [edi + 0x41b4]
test eax, eax
je 0x10cd08f8
push edi
call fcn.10ccb2c0
add esp, 4
jmp 0x10cd0908
mov edx, dword [edi + 0x174]
push edx
push edi
call fcn.10ccae00
add esp, 8
mov ecx, dword [esp + 0x14]
push ebx
push ecx
lea edx, [edi + 0xca]
push edx
push eax
call dword [0x112c41e4]
mov ecx, dword [esp + 0x3c]
add esp, 0x10
test ecx, ecx
jns 0x10cd096a
mov eax, dword [edi + 0x41b4]
test eax, eax
je 0x10cd093c
push edi
call fcn.10ccb2c0
add esp, 4
jmp 0x10cd094c
mov eax, dword [edi + 0x174]
push eax
push edi
call fcn.10ccae00
add esp, 8
mov ecx, dword [esp + 0x24]
push ebx
lea edx, [ecx + ebp]
push edx
lea ecx, [edi + 0xca]
push ecx
push eax
call dword [0x112c41e4]
mov ecx, dword [esp + 0x3c]
add esp, 0x10
test ecx, 0x40000000
je 0x10cd09b8
mov eax, dword [edi + 0x41b4]
test eax, eax
je 0x10cd0987
push edi
call fcn.10ccb2c0
add esp, 4
jmp 0x10cd0997
mov edx, dword [edi + 0x174]
push edx
push edi
call fcn.10ccae00
add esp, 8
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x14]
push ebx
add ecx, edx
push ecx
lea ecx, [edi + 0xca]
push ecx
push eax
call dword [0x112c41e4]
mov ecx, dword [esp + 0x3c]
add esp, 0x10
test ecx, 0x20000000
je 0x10cd09ff
mov eax, dword [edi + 0x41b4]
test eax, eax
je 0x10cd09d5
push edi
call fcn.10ccb2c0
add esp, 4
jmp 0x10cd09e5
mov edx, dword [edi + 0x174]
push edx
push edi
call fcn.10ccae00
add esp, 8
push ebx
lea ecx, [ebp + 8]
push ecx
lea edx, [edi + 0xca]
push edx
push eax
call dword [0x112c41e4]
mov ecx, dword [esp + 0x3c]
add esp, 0x10
test ecx, 0x10000000
je 0x10cd0a4a
mov eax, dword [edi + 0x41b4]
test eax, eax
je 0x10cd0a1c
push edi
call fcn.10ccb2c0
add esp, 4
jmp 0x10cd0a2c
mov eax, dword [edi + 0x174]
push eax
push edi
call fcn.10ccae00
add esp, 8
mov ecx, dword [esp + 0x14]
push ebx
add ecx, 8
push ecx
lea edx, [edi + 0xca]
push edx
push eax
call dword [0x112c41e4]
mov ecx, dword [esp + 0x3c]
add esp, 0x10
test ecx, 0x8000000
je 0x10cd0a96
mov eax, dword [edi + 0x41b4]
test eax, eax
je 0x10cd0a67
push edi
call fcn.10ccb2c0
add esp, 4
jmp 0x10cd0a77
mov eax, dword [edi + 0x174]
push eax
push edi
call fcn.10ccae00
add esp, 8
mov ecx, dword [esp + 0x24]
push ebx
lea edx, [ecx + ebp + 8]
push edx
lea ecx, [edi + 0xca]
push ecx
push eax
call dword [0x112c41e4]
mov ecx, dword [esp + 0x3c]
add esp, 0x10
test ecx, 0x4000000
je 0x10cd0ae2
mov eax, dword [edi + 0x41b4]
test eax, eax
je 0x10cd0ab3
push edi
call fcn.10ccb2c0
add esp, 4
jmp 0x10cd0ac3
mov edx, dword [edi + 0x174]
push edx
push edi
call fcn.10ccae00
add esp, 8
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x14]
push ebx
lea ecx, [ecx + edx + 8]
push ecx
lea edx, [edi + 0xca]
push edx
push eax
call dword [0x112c41e4]
add esp, 0x10
mov eax, 0x4000
mov word [edi + 0xc8], ax
mov word [edi + 0xc6], ax
mov word [edi + 0xc4], ax
mov edx, dword [edi + 0x18]
mov ecx, dword [edi + 0x4180]
mov ebx, 0x10
add edx, ebx
mov eax, edx
cmp eax, ecx
mov dword [edi + 0x18], edx
jne 0x10cd0b81
mov eax, dword [edi + 0x158]
test eax, eax
je 0x10cd0b41
mov ecx, dword [edi + 0x164]
push ecx
mov ecx, dword [edi + 0x15c]
lea edx, [edi + 0xc]
push edx
push ecx
call eax
mov eax, dword [edi + 0x4190]
add esp, 0xc
cmp eax, 3
je 0x10cd0b5f
mov edx, dword [edi + 0x24]
mov esi, dword [edi + 0xc]
mov eax, dword [edi + 0x28]
mov ecx, dword [edi + 0x14]
add esi, edx
mov edx, dword [edi + 0x10]
add edx, eax
add ecx, eax
mov dword [edi + 0xc], esi
mov dword [edi + 0x10], edx
mov dword [edi + 0x14], ecx
mov edx, dword [edi + 0x164]
mov ecx, dword [edi + 0x3c]
add edx, ebx
mov eax, edx
cmp eax, ecx
mov dword [edi + 0x164], edx
ja 0x10cd0e2f
mov dword [edi + 0x18], 0
mov esi, dword [edi + 4]
test esi, esi
jle 0x10cd0ba7
mov eax, dword [edi + 8]
movzx edx, byte [eax + 1]
mov dh, byte [eax]
mov ecx, esi
add eax, 2
mov dword [edi + 8], eax
shl edx, cl
mov ecx, dword [edi]
or ecx, edx
add esi, 0xfffffff0
mov dword [edi], ecx
mov dword [edi + 4], esi
cmp dword [edi], 0x10000000
mov dword [esp + 0x2c], 0
jae 0x10cd0c3b
jmp 0x10cd0bc0
mov eax, dword [edi]
cmp eax, 0x3000000
jae 0x10cd0c4b
mov ecx, eax
shr ecx, 0x15
cmp ecx, 8
je 0x10cd0bf7
cmp ecx, 0xf
je 0x10cd0bfc
mov eax, dword [0x1123d170]
test eax, eax
je 0x10cd0bef
lea edx, [esp + 0x18]
push edx
call eax
add esp, 4
pop esi
pop ebp
pop ebx
pop edi
add esp, 0x10
ret
add dword [esp + 0x2c], 0x21
mov edx, dword [edi + 4]
add edx, 0xb
shl eax, 0xb
mov esi, edx
test esi, esi
mov dword [edi], eax
mov dword [edi + 4], edx
jle 0x10cd0c33
mov ebp, dword [edi + 8]
movzx edx, byte [ebp + 1]
mov dh, byte [ebp]
mov ecx, esi
add ebp, 2
mov dword [edi + 8], ebp
mov ebx, 0x10
shl edx, cl
or edx, eax
add esi, 0xfffffff0
mov dword [edi], edx
mov dword [edi + 4], esi
cmp dword [edi], 0x10000000
jb 0x10cd0bc0
mov eax, dword [edi]
mov ecx, eax
shr ecx, 0x1b
lea edx, [ecx*2 + 0x10eaeb18]
jmp 0x10cd0c59
mov eax, dword [edi]
mov edx, eax
shr edx, 0x15
lea edx, [edx*2 + 0x10eaeb28]
mov cl, byte [edx + 1]
shl eax, cl
mov ecx, dword [edi + 4]
mov dword [edi], eax
movzx eax, byte [edx + 1]
add ecx, eax
mov eax, dword [esp + 0x2c]
mov dword [edi + 4], ecx
movzx ecx, byte [edx]
add eax, ecx
mov dword [esp + 0x2c], eax
je 0x10ccf660
mov eax, 0x4000
mov word [edi + 0xc8], ax
mov word [edi + 0xc6], ax
mov word [edi + 0xc4], ax
cmp dword [edi + 0x4190], 2
jne 0x10cd0d4b
lea esi, [edi + 0x78]
xor ebp, ebp
jmp 0x10cd0cb0
push 0x112c4200
push esi
push edi
call dword [edi + 0xb0]
mov edx, dword [edi + 0x18]
mov ecx, dword [edi + 0x4180]
add edx, ebx
mov eax, edx
add esp, 0xc
cmp eax, ecx
mov dword [edi + 0x18], edx
jne 0x10cd0d3c
mov eax, dword [edi + 0x158]
cmp eax, ebp
je 0x10cd0d00
mov edx, dword [edi + 0x164]
push edx
mov edx, dword [edi + 0x15c]
lea ecx, [edi + 0xc]
push ecx
push edx
call eax
mov eax, dword [edi + 0x4190]
add esp, 0xc
cmp eax, 3
je 0x10cd0d1e
mov eax, dword [edi + 0x24]
mov ecx, dword [edi + 0xc]
mov edx, dword [edi + 0x10]
add ecx, eax
mov eax, dword [edi + 0x28]
mov dword [edi + 0xc], ecx
mov ecx, dword [edi + 0x14]
add edx, eax
add ecx, eax
mov dword [edi + 0x10], edx
mov dword [edi + 0x14], ecx
mov edx, dword [edi + 0x164]
mov ecx, dword [edi + 0x3c]
add edx, ebx
mov eax, edx
cmp eax, ecx
mov dword [edi + 0x164], edx
ja 0x10cd0e23
mov dword [edi + 0x18], ebp
dec dword [esp + 0x2c]
jne 0x10cd0cb0
jmp 0x10ccf660
mov eax, dword [esp + 0x10]
mov ebp, eax
mov esi, eax
and ebp, 4
and esi, 8
lea esp, [esp]
test esi, esi
je 0x10cd0d77
push 0x112c4200
lea ecx, [edi + 0x78]
push ecx
push edi
call dword [edi + 0xc0]
add esp, 0xc
test ebp, ebp
je 0x10cd0d98
test esi, esi
mov eax, 0x112c4220
jne 0x10cd0d89
mov eax, 0x112c4200
push eax
lea edx, [edi + 0x40]
push edx
push edi
call dword [edi + 0xc0]
add esp, 0xc
mov edx, dword [edi + 0x18]
mov ecx, dword [edi + 0x4180]
add edx, ebx
mov eax, edx
cmp eax, ecx
mov dword [edi + 0x18], edx
jne 0x10cd0e14
mov eax, dword [edi + 0x158]
test eax, eax
je 0x10cd0dd8
mov ecx, dword [edi + 0x164]
push ecx
mov ecx, dword [edi + 0x15c]
lea edx, [edi + 0xc]
push edx
push ecx
call eax
mov eax, dword [edi + 0x4190]
add esp, 0xc
cmp eax, 3
je 0x10cd0df6
mov edx, dword [edi + 0x24]
mov eax, dword [edi + 0xc]
mov ecx, dword [edi + 0x14]
add eax, edx
mov edx, dword [edi + 0x10]
mov dword [edi + 0xc], eax
mov eax, dword [edi + 0x28]
add edx, eax
add ecx, eax
mov dword [edi + 0x10], edx
mov dword [edi + 0x14], ecx
mov edx, dword [edi + 0x164]
mov ecx, dword [edi + 0x3c]
add edx, ebx
mov eax, edx
cmp eax, ecx
mov dword [edi + 0x164], edx
ja 0x10cd0e2f
mov dword [edi + 0x18], 0
dec dword [esp + 0x2c]
jne 0x10cd0d60
jmp 0x10ccf660
mov eax, dword [0x1123d170]
cmp eax, ebp
jmp 0x10cd0be3
mov eax, dword [0x1123d170]
test eax, eax
je 0x10cd0bef
lea ecx, [esp + 0x18]
push ecx
call eax
add esp, 4
pop esi
pop ebp
pop ebx
pop edi
add esp, 0x10
ret