Function at 0x431310
Capabilities:
Allocate or change rwx memory

Disassembly:
push 0xffffffffffffffff
push 0x4ab84b
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x204
push ebx
push ebp
push esi
mov esi, ecx
xor ebx, ebx
push edi
lea ecx, [esi + 0xb0]
mov dword [esp + 0x10], esi
cmp ecx, ebx
je 0x431349
lea eax, [ecx - 0xb0]
jmp 0x43134b
xor eax, eax
push ecx
add eax, 8
push 0x40
push 0xd
push eax
call dword [sym.imp.KERNEL32.dll_VirtualProtect]
mov eax, dword [sym.imp.USER32.dll_DefWindowProcW]
mov dword [esi + 4], ebx
mov dword [esp + 0x21c], ebx
mov dword [esi + 0x18], ebx
mov dword [esi + 0x1c], eax
or eax, 0xffffffff
mov dword [esi + 0xb4], ebx
mov dword [esi + 0xb8], ebx
mov dword [esi + 0xbc], ebx
mov byte [esi + 0xd0], bl
mov dword [esi + 0xc0], ebx
mov dword [esi + 0xc4], ebx
mov dword [esi + 0xc8], eax
mov dword [esi + 0xcc], eax
lea edi, [esi + 0x20]
mov byte [esp + 0x21c], 2
mov ecx, edi
call fcn.00441460
push ebx
mov ecx, edi
mov byte [esp + 0x220], 3
mov dword [esi], vtable.CSelectIEPage.1.0
mov dword [edi], vtable.CSelectIEPage.0
mov dword [esi + 0x98], 2
call fcn.004288b0
mov ecx, eax
call fcn.0043d3f0
test eax, eax
jne 0x4314a2
mov dword [esi + 0x48], 0x68
mov ecx, dword [0x4d1ac8]
lea edx, [esp + 0x14]
push 0x100
mov eax, dword [ecx + 8]
push edx
push 0x87
push eax
lea ebp, [esi + 0x4c]
call dword [sym.imp.USER32.dll_LoadStringW]
cmp eax, ebx
jne 0x43141b
mov word [esp + 0x14], bx
mov ecx, 0x100
sub ecx, eax
cmp ecx, 1
jle 0x43145a
lea edx, [esp + 0x14]
test edx, edx
jne 0x431440
lea ecx, [esp + 0x14]
xor eax, eax
push ecx
push eax
mov ecx, ebp
call fcn.00405750
jmp 0x4314a2
lea eax, [esp + 0x14]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
lea ecx, [esp + 0x14]
push ecx
push eax
mov ecx, ebp
call fcn.00405750
jmp 0x4314a2
push 0x1ff
mov ecx, ebp
mov edi, 0x200
call fcn.00405530
cmp eax, ebx
je 0x431499
push edi
push eax
push 0x87
call fcn.00405b00
mov edx, edi
sub edx, eax
cmp edx, 1
jg 0x431499
add edi, 0x100
mov ecx, ebp
lea eax, [edi - 1]
push eax
call fcn.00405530
cmp eax, ebx
jne 0x43146f
push 0xffffffffffffffff
mov ecx, ebp
call fcn.004055f0
mov dword [esi + 0x58], 0x6a
mov ecx, dword [0x4d1ac8]
lea edx, [esp + 0x14]
push 0x100
mov eax, dword [ecx + 8]
push edx
push 0x89
push eax
lea ebp, [esi + 0x5c]
call dword [sym.imp.USER32.dll_LoadStringW]
cmp eax, ebx
jne 0x4314d4
mov word [esp + 0x14], bx
mov ecx, 0x100
sub ecx, eax
cmp ecx, 1
jle 0x4314ee
lea edx, [esp + 0x14]
mov ecx, ebp
push edx
call fcn.00404c50
jmp 0x431536
push 0x1ff
mov ecx, ebp
mov edi, 0x200
call fcn.00405530
cmp eax, ebx
je 0x43152d
push edi
push eax
push 0x89
call fcn.00405b00
mov ecx, edi
sub ecx, eax
cmp ecx, 1
jg 0x43152d
add edi, 0x100
mov ecx, ebp
lea edx, [edi - 1]
push edx
call fcn.00405530
cmp eax, ebx
jne 0x431503
push 0xffffffffffffffff
mov ecx, ebp
call fcn.004055f0
mov eax, dword [esi + 0x98]
lea ecx, [esi + 0x20]
push eax
call fcn.004288b0
mov ecx, eax
call fcn.0043d630
cmp eax, ebx
je 0x4315dd
cmp dword [eax + 4], ebx
je 0x4315dd
lea ecx, [esp + 0x14]
push 0x100
push ecx
push 0x8a
mov dword [esi + 0x68], 2
lea ebp, [esi + 0x6c]
call fcn.00405b00
mov edx, 0x100
sub edx, eax
cmp edx, 1
jle 0x431595
lea eax, [esp + 0x14]
mov ecx, ebp
push eax
call fcn.00404c50
jmp 0x4315dd
push 0x1ff
mov ecx, ebp
mov edi, 0x200
call fcn.00405530
cmp eax, ebx
je 0x4315d4
push edi
push eax
push 0x8a
call fcn.00405b00
mov ecx, edi
sub ecx, eax
cmp ecx, 1
jg 0x4315d4
add edi, 0x100
mov ecx, ebp
lea edx, [edi - 1]
push edx
call fcn.00405530
cmp eax, ebx
jne 0x4315aa
push 0xffffffffffffffff
mov ecx, ebp
call fcn.004055f0
mov ecx, 0x4d1ad0
call fcn.0047ee50
mov ecx, eax
call fcn.0043d5b0
push eax
lea ecx, [esi + 0x94]
call fcn.00410630
mov ecx, dword [esp + 0x214]
mov dword [esi + 0xd8], ebx
mov eax, esi
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x210
ret