Function at 0x42282b
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x7c]
mov dword [ebp - 4], ecx
mov edx, dword [ebp - 4]
cmp dword [edx + 4], 1
jne 0x422862
cmp dword [ebp + 0xc], 1
jne 0x422856
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x28]
mov edx, dword [ecx]
mov dword [ebp - 0xc], edx
jmp 0x42285d
mov dword [ebp - 0xc], 0
jmp 0x422bb0
mov eax, dword [ebp - 4]
cmp dword [eax + 4], 2
jne 0x422915
cmp dword [ebp + 0xc], 1
jne 0x422885
mov ecx, dword [ebp - 4]
mov edx, dword [ecx + 0x28]
mov eax, dword [edx]
mov dword [ebp - 0xc], eax
jmp 0x422910
cmp dword [ebp + 0xc], 2
jne 0x422899
mov ecx, dword [ebp - 4]
mov edx, dword [ecx + 0x28]
mov eax, dword [edx + 4]
mov dword [ebp - 0xc], eax
jmp 0x422910
cmp dword [ebp + 0xc], 0x100
jne 0x4228b0
mov ecx, dword [ebp - 4]
mov edx, dword [ecx + 0x28]
mov eax, dword [edx + 8]
mov dword [ebp - 0xc], eax
jmp 0x422910
cmp dword [ebp + 0xc], 0x200
jne 0x4228c7
mov ecx, dword [ebp - 4]
mov edx, dword [ecx + 0x28]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xc], eax
jmp 0x422910
cmp dword [ebp + 0xc], 0x400
jne 0x4228de
mov ecx, dword [ebp - 4]
mov edx, dword [ecx + 0x28]
mov eax, dword [edx + 0x10]
mov dword [ebp - 0xc], eax
jmp 0x422910
cmp dword [ebp + 0xc], 0x40
jne 0x4228f2
mov ecx, dword [ebp - 4]
mov edx, dword [ecx + 0x28]
mov eax, dword [edx + 0x14]
mov dword [ebp - 0xc], eax
jmp 0x422910
cmp dword [ebp + 0xc], 0x80
jne 0x422909
mov ecx, dword [ebp - 4]
mov edx, dword [ecx + 0x28]
mov eax, dword [edx + 0x18]
mov dword [ebp - 0xc], eax
jmp 0x422910
mov dword [ebp - 0xc], 0
jmp 0x422bb0
mov ecx, dword [ebp - 4]
cmp dword [ecx + 4], 3
jne 0x4229ba
cmp dword [ebp + 0xc], 1
jne 0x422936
mov edx, dword [ebp - 4]
mov eax, dword [edx + 0x28]
mov ecx, dword [eax + 0x18]
mov dword [ebp - 0xc], ecx
jmp 0x4229b5
cmp dword [ebp + 0xc], 2
jne 0x42294a
mov edx, dword [ebp - 4]
mov eax, dword [edx + 0x28]
mov ecx, dword [eax + 0x1c]
mov dword [ebp - 0xc], ecx
jmp 0x4229b5
cmp dword [ebp + 0xc], 4
jne 0x42295e
mov edx, dword [ebp - 4]
mov eax, dword [edx + 0x28]
mov ecx, dword [eax + 0x20]
mov dword [ebp - 0xc], ecx
jmp 0x4229b5
cmp dword [ebp + 0xc], 8
jne 0x422972
mov edx, dword [ebp - 4]
mov eax, dword [edx + 0x28]
mov ecx, dword [eax + 0x24]
mov dword [ebp - 0xc], ecx
jmp 0x4229b5
cmp dword [ebp + 0xc], 0x10
jne 0x422986
mov edx, dword [ebp - 4]
mov eax, dword [edx + 0x28]
mov ecx, dword [eax + 0x28]
mov dword [ebp - 0xc], ecx
jmp 0x4229b5
cmp dword [ebp + 0xc], 0x20
jne 0x42299a
mov edx, dword [ebp - 4]
mov eax, dword [edx + 0x28]
mov ecx, dword [eax + 0x2c]
mov dword [ebp - 0xc], ecx
jmp 0x4229b5
cmp dword [ebp + 0xc], 0x40
jne 0x4229ae
mov edx, dword [ebp - 4]
mov eax, dword [edx + 0x28]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0xc], ecx
jmp 0x4229b5
mov dword [ebp - 0xc], 0
jmp 0x422bb0
mov edx, dword [ebp - 4]
cmp dword [edx + 4], 4
jne 0x422bb0
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.00422801
add esp, 8
test eax, eax
jne 0x4229e2
xor eax, eax
jmp 0x422ccd
cmp dword [ebp + 0xc], 1
jne 0x4229f9
mov edx, dword [ebp - 4]
mov eax, dword [edx + 0x28]
mov ecx, dword [eax + 4]
mov dword [ebp - 0xc], ecx
jmp 0x422bb0
cmp dword [ebp + 0xc], 2
jne 0x422a10
mov edx, dword [ebp - 4]
mov eax, dword [edx + 0x28]
mov ecx, dword [eax + 8]
mov dword [ebp - 0xc], ecx
jmp 0x422bb0
cmp dword [ebp + 0xc], 4
jne 0x422a27
mov edx, dword [ebp - 4]
mov eax, dword [edx + 0x28]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xc], ecx
jmp 0x422bb0
cmp dword [ebp + 0xc], 8
jne 0x422a3e
mov edx, dword [ebp - 4]
mov eax, dword [edx + 0x28]
mov ecx, dword [eax + 0x10]
mov dword [ebp - 0xc], ecx
jmp 0x422bb0
cmp dword [ebp + 0xc], 0x10
jne 0x422a55
mov edx, dword [ebp - 4]
mov eax, dword [edx + 0x28]
mov ecx, dword [eax + 0x14]
mov dword [ebp - 0xc], ecx
jmp 0x422bb0
cmp dword [ebp + 0xc], 0x20
jne 0x422a6c
mov edx, dword [ebp - 4]
mov eax, dword [edx + 0x28]
mov ecx, dword [eax + 0x18]
mov dword [ebp - 0xc], ecx
jmp 0x422bb0
cmp dword [ebp + 0xc], 0x40
jne 0x422a83
mov edx, dword [ebp - 4]
mov eax, dword [edx + 0x28]
mov ecx, dword [eax + 0x1c]
mov dword [ebp - 0xc], ecx
jmp 0x422bb0
cmp dword [ebp + 0xc], 0x800
jne 0x422a9d
mov edx, dword [ebp - 4]
mov eax, dword [edx + 0x28]
mov ecx, dword [eax + 0x20]
mov dword [ebp - 0xc], ecx
jmp 0x422bb0
cmp dword [ebp + 0xc], 0x1000
jne 0x422ab7
mov edx, dword [ebp - 4]
mov eax, dword [edx + 0x28]
mov ecx, dword [eax + 0x24]
mov dword [ebp - 0xc], ecx
jmp 0x422bb0
cmp dword [ebp + 0xc], 0x2000
jne 0x422ad1
mov edx, dword [ebp - 4]
mov eax, dword [edx + 0x28]
mov ecx, dword [eax + 0x28]
mov dword [ebp - 0xc], ecx
jmp 0x422bb0
cmp dword [ebp + 0xc], 0x4000
jne 0x422aeb
mov edx, dword [ebp - 4]
mov eax, dword [edx + 0x28]
mov ecx, dword [eax + 0x2c]
mov dword [ebp - 0xc], ecx
jmp 0x422bb0
cmp dword [ebp + 0xc], 0x100000
jne 0x422b05
mov edx, dword [ebp - 4]
mov eax, dword [edx + 0x28]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0xc], ecx
jmp 0x422bb0
cmp dword [ebp + 0xc], 0x200000
jne 0x422b1f
mov edx, dword [ebp - 4]
mov eax, dword [edx + 0x28]
mov ecx, dword [eax + 0x34]
mov dword [ebp - 0xc], ecx
jmp 0x422bb0
cmp dword [ebp + 0xc], 0x400000
jne 0x422b36
mov edx, dword [ebp - 4]
mov eax, dword [edx + 0x28]
mov ecx, dword [eax + 0x38]
mov dword [ebp - 0xc], ecx
jmp 0x422bb0
cmp dword [ebp + 0xc], 0x8000
jne 0x422b4d
mov edx, dword [ebp - 4]
mov eax, dword [edx + 0x28]
mov ecx, dword [eax + 0x3c]
mov dword [ebp - 0xc], ecx
jmp 0x422bb0
cmp dword [ebp + 0xc], 0x10000
jne 0x422b64
mov edx, dword [ebp - 4]
mov eax, dword [edx + 0x28]
mov ecx, dword [eax + 0x40]
mov dword [ebp - 0xc], ecx
jmp 0x422bb0
cmp dword [ebp + 0xc], 0x20000
jne 0x422b7b
mov edx, dword [ebp - 4]
mov eax, dword [edx + 0x28]
mov ecx, dword [eax + 0x44]
mov dword [ebp - 0xc], ecx
jmp 0x422bb0
cmp dword [ebp + 0xc], 0x40000
jne 0x422b92
mov edx, dword [ebp - 4]
mov eax, dword [edx + 0x28]
mov ecx, dword [eax + 0x48]
mov dword [ebp - 0xc], ecx
jmp 0x422bb0
cmp dword [ebp + 0xc], 0x80000
jne 0x422ba9
mov edx, dword [ebp - 4]
mov eax, dword [edx + 0x28]
mov ecx, dword [eax + 0x4c]
mov dword [ebp - 0xc], ecx
jmp 0x422bb0
mov dword [ebp - 0xc], 0
mov dword [ebp - 8], 0
mov edx, dword [ebp + 8]
mov dword [edx + 0x54], 0
cmp dword [ebp - 0xc], 0
je 0x422c7b
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0xc]
mov dword [eax + 0x78], ecx
mov edx, dword [ebp + 8]
mov eax, dword [ebp + 0xc]
mov dword [edx + 0x34], eax
mov ecx, dword [ebp + 8]
mov edx, dword [ebp - 0xc]
mov eax, dword [edx + 4]
mov dword [ecx + 0x54], eax
mov ecx, dword [ebp - 0xc]
cmp dword [ecx + 0x10], 0
je 0x422c37
mov edx, dword [ebp - 0xc]
mov eax, dword [edx + 0x10]
and eax, 0x80000000
test eax, eax
jne 0x422c19
push 0
mov ecx, dword [ebp - 0xc]
mov edx, dword [ecx + 0x10]
push edx
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp + 8]
call dword [ecx + 0x4c]
add esp, 0xc
jmp 0x422c37
mov edx, dword [ebp - 0xc]
mov eax, dword [edx + 0x10]
and eax, 0x7fffffff
push eax
push 0x80000000
mov ecx, dword [ebp + 8]
push ecx
mov edx, dword [ebp + 8]
call dword [edx + 0x4c]
add esp, 0xc
mov eax, dword [ebp - 0xc]
cmp dword [eax + 0xc], 0
je 0x422c72
push 0xc0
mov ecx, dword [ebp - 0xc]
mov edx, dword [ecx + 0xc]
push edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x10]
sar ecx, 0x10
push ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xc]
sar eax, 0x10
push eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 8]
sar edx, 0x10
push edx
call fcn.00469cb0
add esp, 0x14
mov dword [ebp - 8], 1
jmp 0x422c8a
mov eax, dword [ebp + 8]
mov dword [eax + 0x6c], 0
or eax, 0xffffffff
jmp 0x422ccd
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x78]
mov eax, dword [edx + 8]
mov dword [ebp - 0xc], eax
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0x54], 0
je 0x422bc1
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x30]
and eax, 0x20000
test eax, eax
je 0x422cca
push 5
call fcn.00450527
add esp, 4
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x54]
add edx, eax
mov eax, dword [ebp + 8]
mov dword [eax + 0x54], edx
mov eax, dword [ebp - 8]
mov esp, ebp
pop ebp
ret