Function at 0x436ed0
Capabilities:
Inspect section memory permissions

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4a2758
mov eax, dword fs:[0]
push eax
sub esp, 0x28
mov eax, dword [0x636b1c]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov esi, ecx
mov dword [ebp - 0x34], esi
mov ebx, dword [ebp + 8]
mov edi, dword [ebp + 0xc]
mov byte [ebp - 0x25], 1
mov dword [ebp - 4], 0
push ebx
call fcn.004383d0
test al, al
jne 0x436f31
xor bl, bl
mov byte [ebp - 0x25], bl
mov dword [ebp - 4], 0xffffffff
mov al, bl
jmp 0x43748a
xorps xmm0, xmm0
movq qword [ebp - 0x24], xmm0
push 1
push 0x638a20
lea ecx, [ebp - 0x24]
call fcn.00405210
mov byte [ebp - 4], 1
push dword [esi + 0x4c]
push ebx
call fcn.00437e30
add esp, 8
test al, al
je 0x436f66
xor bl, bl
mov byte [ebp - 0x25], bl
jmp 0x437463
push edi
call fcn.00402770
mov eax, 3
mov word [edi + 0x96], ax
push ebx
call fcn.00438930
push eax
call fcn.00403bd0
mov dword [edi + 0x54], eax
push ebx
call fcn.00438740
push eax
call fcn.00403bd0
mov dword [edi + 0x58], eax
push ebx
call fcn.004386e0
push eax
call fcn.00403c90
add esp, 0x1c
mov dword [edi + 0x5c], eax
push ebx
mov ecx, esi
call fcn.004333f0
push eax
call fcn.00403c90
mov dword [edi + 0x60], eax
push 0x4b4618
call fcn.00403c90
mov dword [edi + 0x64], eax
push 0x4b4618
call fcn.00403c90
add esp, 0xc
mov dword [edi + 0x7c], eax
mov eax, 0x13
mov word [edi + 0x10], ax
push ebx
mov ecx, esi
call fcn.00436990
movzx eax, ax
mov dword [edi + 0x18], eax
cmp eax, 0xffff
jne 0x436ffa
xor eax, eax
mov word [edi + 0x10], ax
cmp ebx, 0xc6000317
je 0x437058
mov eax, 0x15
mov word [edi + 0x20], ax
mov dword [ebp - 0x1c], 0x68
mov dword [ebp - 0x18], 0
mov ecx, 0x10
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x18]
shld edx, eax, cl
shl eax, cl
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x30], eax
mov ecx, 0x10
mov eax, dword [ebp - 0x30]
mov edx, dword [ebp - 0x2c]
shld edx, eax, cl
shl eax, cl
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x30], eax
mov ecx, ebx
xor esi, esi
add ecx, eax
adc esi, edx
mov dword [edi + 0x28], ecx
mov dword [edi + 0x2c], esi
mov esi, dword [ebp - 0x34]
jmp 0x43707e
mov eax, 0x13
mov word [edi + 0x20], ax
mov eax, dword [edi + 0x18]
mov dword [edi + 0x28], eax
cmp eax, 0xffff
jne 0x437076
xor eax, eax
mov word [edi + 0x20], ax
jmp 0x43707e
add eax, 0x30000
mov dword [edi + 0x28], eax
lea eax, [edi + 0x94]
push eax
push ebx
lea ecx, [esi + 0x598]
call sub.mfc120u.dll_Ordinal_8388
test eax, eax
jne 0x43709f
or eax, 0xffffffff
mov word [edi + 0x94], ax
call fcn.00455c60
test al, al
jne 0x4370c4
mov ecx, esi
call fcn.00433370
test al, al
jne 0x4370c4
mov eax, ebx
shr eax, 0x18
cmp al, 5
je 0x4370c0
cmp al, 0xea
jne 0x4370c4
or dword [edi + 0x6c], 0x20
or dword [edi + 0x68], 0x2000
or dword [edi + 0x70], 1
mov eax, dword [edi + 0x70]
or eax, 0x100
mov dword [edi + 0x70], eax
cmp ebx, 0xc6000317
je 0x437131
or eax, 0x2000
mov dword [edi + 0x70], eax
or eax, 0x4000
mov dword [edi + 0x70], eax
push ebx
call fcn.00438990
add esp, 4
cmp al, 7
je 0x437106
or dword [edi + 0x70], 0x80000000
test bl, bl
je 0x437116
push ebx
mov ecx, esi
call fcn.00432560
cmp al, 1
jne 0x43711d
or dword [edi + 0x70], 0x10000
push ebx
call fcn.00438990
add esp, 4
cmp al, 7
jne 0x437131
or dword [edi + 0x70], 0x20000
push ebx
call fcn.00438990
add esp, 4
movzx eax, al
cmp eax, 9
ja case.default.0x437146
jmp dword [eax*4 + 0x4374a8]
mov eax, 0xb
mov word [edi + 0x88], ax
jmp case.default.0x437146
mov eax, 0x11
mov word [edi + 0x88], ax
jmp case.default.0x437146
mov eax, 2
mov word [edi + 0x88], ax
jmp case.default.0x437146
mov eax, 3
mov word [edi + 0x88], ax
or dword [edi + 0x70], 0x1000000
or dword [edi + 0x78], 1
jmp case.default.0x437146
mov eax, 3
mov word [edi + 0x88], ax
or dword [edi + 0x6c], 0x2000
or dword [edi + 0x70], 0x1000000
or dword [edi + 0x78], 1
jmp case.default.0x437146
or dword [edi + 0x70], 0x1000000
or dword [edi + 0x74], 0x20
mov eax, 0x13
mov word [edi + 0x88], ax
jmp case.default.0x437146
mov eax, 4
jmp 0x437185
mov eax, 4
mov word [edi + 0x88], ax
or dword [edi + 0x70], 0x1000000
jmp case.default.0x437146
mov eax, 8
mov word [edi + 0x88], ax
or dword [edi + 0x6c], 0x10000000
push ebx
call fcn.00460760
add esp, 4
movzx eax, al
lea eax, [eax*2 - 1]
mov word [edi + 0x8e], ax
push ebx
call fcn.00438230
add esp, 4
test al, al
je 0x437232
or dword [edi + 0x6c], 0x100000
mov dword [edi + 0x50], ebx
lea eax, [edi + 0x8a]
push eax
push ebx
lea ecx, [esi + 0x508]
call sub.mfc120u.dll_Ordinal_8388
test eax, eax
jne 0x437253
mov word [edi + 0x8a], ax
push ebx
mov ecx, esi
call fcn.00436450
mov word [edi + 0x8c], ax
push ebx
mov ecx, esi
call fcn.00436340
mov word [edi + 0x96], ax
push ebx
call fcn.004362e0
add esp, 4
cmp al, 3
jne 0x437285
or dword [edi + 0x68], 0x20000000
push ebx
call fcn.004376d0
add esp, 4
movzx eax, al
sub eax, 2
je 0x4372a2
dec eax
jne 0x4372a9
or dword [edi + 0x68], 0x40000000
jmp 0x4372a9
or dword [edi + 0x68], 0x80000000
push ebx
call fcn.00438360
add esp, 4
test al, al
je 0x4372ba
or dword [edi + 0x68], 0x10
push ebx
call fcn.004366b0
add esp, 4
test al, al
je 0x4372ce
or dword [edi + 0x74], 0x100
push ebx
call fcn.00437530
add esp, 4
test al, al
je 0x4372e2
or dword [edi + 0x74], 0x200
push ebx
call fcn.00437590
add esp, 4
test al, al
je 0x4372f6
or dword [edi + 0x74], 0x400
push ebx
call fcn.00438680
add esp, 4
test al, al
je 0x437307
or dword [edi + 0x6c], 0x10
cmp ebx, 0xc6000303
jne 0x437321
or dword [edi + 0x68], 0x10000
xor eax, eax
mov word [edi + 0x96], ax
jmp 0x43734a
cmp ebx, 0xc6000312
jne 0x43733b
or dword [edi + 0x68], 0x40000
xor eax, eax
mov word [edi + 0x96], ax
jmp 0x43734a
cmp ebx, 0xc6000305
jne 0x43734a
or dword [edi + 0x68], 0x80000
push ebx
call fcn.00437f90
add esp, 4
test al, al
je 0x43735e
or dword [edi + 0x68], 0x200000
push ebx
call fcn.00437ed0
add esp, 4
test al, al
je 0x437372
or dword [edi + 0x68], 0x400000
push ebx
call fcn.00438340
add esp, 4
test al, al
je 0x437386
or dword [edi + 0x68], 0x800000
push ebx
call fcn.00437f10
add esp, 4
test al, al
je 0x43739a
or dword [edi + 0x68], 0x4000000
push ebx
call fcn.00438200
add esp, 4
test al, al
je 0x4373ab
or dword [edi + 0x6c], 0x20
push ebx
call fcn.004382a0
add esp, 4
test al, al
je 0x4373bf
or dword [edi + 0x6c], 0x40000
push ebx
call fcn.004375f0
add esp, 4
test al, al
je 0x4373d3
or dword [edi + 0x6c], 0x80000000
push ebx
call fcn.00438200
add esp, 4
test al, al
je 0x4373e7
or dword [edi + 0x6c], 0x400
push ebx
call fcn.004381e0
add esp, 4
test al, al
je 0x4373f8
or dword [edi + 0x68], 0x20
push ebx
call fcn.004381e0
add esp, 4
test al, al
je 0x43740c
or dword [edi + 0x68], 0x8000
push ebx
call fcn.00438260
add esp, 4
test al, al
je 0x43741d
or dword [edi + 0x68], 0x40
push ebx
call fcn.00437ef0
add esp, 4
test al, al
je 0x43742e
or dword [edi + 0x68], 1
push ebx
call fcn.00436040
add esp, 4
test al, al
je 0x437442
or dword [edi + 0x70], 0x200000
push ebx
call fcn.00436020
add esp, 4
test al, al
je 0x437456
or dword [edi + 0x70], 0x400000
mov eax, dword [esi]
push edi
push ebx
push 0
push esi
call dword [eax + 0x50]
mov bl, byte [ebp - 0x25]
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x24]
call fcn.004052b0
mov dword [ebp - 4], 0xffffffff
mov al, bl
jmp 0x43748a
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.004743e6
mov esp, ebp
pop ebp
ret 8