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

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x1b0
mov eax, dword [ebp + 8]
mov dword [esp + 0x1a4], eax
mov dword [esp + 0x1a0], 0
mov dword [esp + 0x19c], 0
mov dword [esp + 0x148], 0
mov dword [esp + 0x144], 0
mov eax, dword [0x4482cc]
mov dword [esp + 0x138], eax
mov cx, word [0x4482d0]
mov word [esp + 0x13c], cx
mov dword [esp + 0x130], 0
mov eax, dword [0x46d580]
mov dword [esp + 0x1ac], eax
mov dword [esp + 0x128], 0x2ec58f16
mov eax, dword [esp + 0x128]
mov ecx, eax
sub ecx, 0x88856ad0
mov dword [esp + 0x124], eax
mov dword [esp + 0x120], ecx
jg 0x4221aa
jmp 0x42218c
mov eax, dword [esp + 0x124]
sub eax, 0x87595560
mov dword [esp + 0x11c], eax
je 0x4227f1
jmp 0x422714
mov eax, dword [esp + 0x124]
sub eax, 0x8aedd55e
mov dword [esp + 0x118], eax
jg 0x4221e6
jmp 0x4221c8
mov eax, dword [esp + 0x124]
sub eax, 0x88856ad1
mov dword [esp + 0x114], eax
je 0x422c7d
jmp 0x422714
mov eax, dword [esp + 0x124]
sub eax, 0xa531fee4
mov dword [esp + 0x110], eax
jg 0x422222
jmp 0x422204
mov eax, dword [esp + 0x124]
sub eax, 0x8aedd55f
mov dword [esp + 0x10c], eax
je 0x422b03
jmp 0x422714
mov eax, dword [esp + 0x124]
sub eax, 0xa78edb77
mov dword [esp + 0x108], eax
jg 0x42225e
jmp 0x422240
mov eax, dword [esp + 0x124]
sub eax, 0xa531fee5
mov dword [esp + 0x104], eax
je 0x422c04
jmp 0x422714
mov eax, dword [esp + 0x124]
sub eax, 0x6bb1a573
mov dword [esp + 0x100], eax
jg 0x4226f9
jmp 0x42227c
mov eax, dword [esp + 0x124]
sub eax, 0x6ad3050f
mov dword [esp + 0xfc], eax
jg 0x4226de
jmp 0x42229a
mov eax, dword [esp + 0x124]
sub eax, 0x6589d217
mov dword [esp + 0xf8], eax
jg 0x4226c3
jmp 0x4222b8
mov eax, dword [esp + 0x124]
sub eax, 0x55f4c88f
mov dword [esp + 0xf4], eax
jg 0x4226a8
jmp 0x4222d6
mov eax, dword [esp + 0x124]
sub eax, 0x4ce40fba
mov dword [esp + 0xf0], eax
jg 0x42268d
jmp 0x4222f4
mov eax, dword [esp + 0x124]
sub eax, 0x4971e0c3
mov dword [esp + 0xec], eax
jg 0x422672
jmp 0x422312
mov eax, dword [esp + 0x124]
sub eax, 0x4589a707
mov dword [esp + 0xe8], eax
jg 0x422657
jmp 0x422330
mov eax, dword [esp + 0x124]
sub eax, 0x3f029ba3
mov dword [esp + 0xe4], eax
jg 0x42263c
jmp 0x42234e
mov eax, dword [esp + 0x124]
sub eax, 0x37501bfb
mov dword [esp + 0xe0], eax
jg 0x42261e
jmp 0x42236c
mov eax, dword [esp + 0x124]
sub eax, 0x3040037e
mov dword [esp + 0xdc], eax
jg 0x422600
jmp 0x42238a
mov eax, dword [esp + 0x124]
sub eax, 0x2ec58f15
mov dword [esp + 0xd8], eax
jg 0x4225e2
jmp 0x4223a8
mov eax, dword [esp + 0x124]
sub eax, 0x25ace3dd
mov dword [esp + 0xd4], eax
jg 0x4225c4
jmp 0x4223c6
mov eax, dword [esp + 0x124]
sub eax, 0xd68931d
mov dword [esp + 0xd0], eax
jg 0x4225a6
jmp 0x4223e4
mov eax, dword [esp + 0x124]
sub eax, 0xa81a5902
mov dword [esp + 0xcc], eax
jg 0x422420
jmp 0x422402
mov eax, dword [esp + 0x124]
sub eax, 0xa78edb78
mov dword [esp + 0xc8], eax
je 0x422bc1
jmp 0x422714
mov eax, dword [esp + 0x124]
sub eax, 0xb47b68e7
mov dword [esp + 0xc4], eax
jg 0x42245c
jmp 0x42243e
mov eax, dword [esp + 0x124]
sub eax, 0xa81a5903
mov dword [esp + 0xc0], eax
je 0x42275b
jmp 0x422714
mov eax, dword [esp + 0x124]
sub eax, 0xb5aff509
mov dword [esp + 0xbc], eax
jg 0x422498
jmp 0x42247a
mov eax, dword [esp + 0x124]
sub eax, 0xb47b68e8
mov dword [esp + 0xb8], eax
je 0x422b80
jmp 0x422714
mov eax, dword [esp + 0x124]
sub eax, 0xc0495140
mov dword [esp + 0xb4], eax
jg 0x4224d4
jmp 0x4224b6
mov eax, dword [esp + 0x124]
sub eax, 0xb5aff50a
mov dword [esp + 0xb0], eax
je 0x42273f
jmp 0x422714
mov eax, dword [esp + 0x124]
sub eax, 0xe3cdb609
mov dword [esp + 0xac], eax
jg 0x422510
jmp 0x4224f2
mov eax, dword [esp + 0x124]
sub eax, 0xc0495141
mov dword [esp + 0xa8], eax
je 0x422974
jmp 0x422714
mov eax, dword [esp + 0x124]
sub eax, 0xf6a10edd
mov dword [esp + 0xa4], eax
jg 0x42254c
jmp 0x42252e
mov eax, dword [esp + 0x124]
sub eax, 0xe3cdb60a
mov dword [esp + 0xa0], eax
je 0x42289b
jmp 0x422714
mov eax, dword [esp + 0x124]
sub eax, 0xf6a10ede
mov dword [esp + 0x9c], eax
je 0x422c14
jmp 0x42256a
mov eax, dword [esp + 0x124]
sub eax, 0x365620b
mov dword [esp + 0x98], eax
je 0x422aaa
jmp 0x422588
mov eax, dword [esp + 0x124]
sub eax, 0x3d40f4f
mov dword [esp + 0x94], eax
je 0x4227a4
jmp 0x422714
mov eax, dword [esp + 0x124]
sub eax, 0xd68931e
mov dword [esp + 0x90], eax
je 0x422aca
jmp 0x422714
mov eax, dword [esp + 0x124]
sub eax, 0x25ace3de
mov dword [esp + 0x8c], eax
je 0x422850
jmp 0x422714
mov eax, dword [esp + 0x124]
sub eax, 0x2ec58f16
mov dword [esp + 0x88], eax
je 0x422719
jmp 0x422714
mov eax, dword [esp + 0x124]
sub eax, 0x3040037f
mov dword [esp + 0x84], eax
je 0x422a48
jmp 0x422714
mov eax, dword [esp + 0x124]
sub eax, 0x37501bfc
mov dword [esp + 0x80], eax
je 0x422c38
jmp 0x422714
mov eax, dword [esp + 0x124]
sub eax, 0x3f029ba4
mov dword [esp + 0x7c], eax
je 0x422aba
jmp 0x422714
mov eax, dword [esp + 0x124]
sub eax, 0x4589a708
mov dword [esp + 0x78], eax
je 0x422a9a
jmp 0x422714
mov eax, dword [esp + 0x124]
sub eax, 0x4971e0c4
mov dword [esp + 0x74], eax
je 0x422a80
jmp 0x422714
mov eax, dword [esp + 0x124]
sub eax, 0x4ce40fbb
mov dword [esp + 0x70], eax
je 0x4228cf
jmp 0x422714
mov eax, dword [esp + 0x124]
sub eax, 0x55f4c890
mov dword [esp + 0x6c], eax
je 0x422c57
jmp 0x422714
mov eax, dword [esp + 0x124]
sub eax, 0x6589d218
mov dword [esp + 0x68], eax
je 0x422927
jmp 0x422714
mov eax, dword [esp + 0x124]
sub eax, 0x6ad30510
mov dword [esp + 0x64], eax
je 0x422bdb
jmp 0x422714
mov eax, dword [esp + 0x124]
sub eax, 0x6bb1a574
mov dword [esp + 0x60], eax
je 0x422af3
jmp 0x422714
jmp 0x422c8b
mov eax, 0xa81a5903
mov ecx, 0xb5aff50a
mov edx, dword [esp + 0x1ac]
cmp edx, 0
cmovne eax, ecx
mov dword [esp + 0x128], eax
jmp 0x422c8b
mov eax, dword [0x46d584]
mov dword [esp + 0x1a8], eax
mov dword [esp + 0x128], 0x88856ad1
jmp 0x422c8b
mov eax, 0
mov dword [esp], 0
mov dword [esp + 0x5c], eax
call fcn.004054c0
mov ecx, 0x8aedd55f
mov edx, 0x3d40f4f
mov esi, dword [esp + 0x1a4]
mov dword [esi], eax
mov dword [esp + 0x12c], eax
cmp dword [esp + 0x12c], 6
cmovae ecx, edx
mov dword [esp + 0x128], ecx
jmp 0x422c8b
mov eax, dword [0x46e820]
mov ecx, dword [0x46e888]
mov dword [esp + 0x58], eax
call ecx
mov ecx, esp
lea edx, [esp + 0x144]
mov dword [ecx], eax
mov dword [ecx + 8], edx
mov dword [ecx + 4], 0x2000000
mov eax, dword [esp + 0x58]
call eax
sub esp, 0xc
mov ecx, 0x6bb1a574
mov edx, 0x87595560
cmp eax, 0
cmovne ecx, edx
mov dword [esp + 0x128], ecx
jmp 0x422c8b
mov eax, dword [0x46e81c]
mov ecx, dword [esp + 0x130]
mov edx, dword [esp + 0x144]
mov esi, esp
mov dword [esi + 0xc], ecx
mov dword [esi + 8], 0
mov dword [esi + 4], 0x19
lea ecx, [esp + 0x130]
mov dword [esi], edx
mov dword [esi + 0x10], ecx
call eax
sub esp, 0x14
mov ecx, 0xd68931e
mov edx, 0x25ace3de
cmp dword [esp + 0x130], 0
cmovne ecx, edx
mov dword [esp + 0x128], ecx
mov dword [esp + 0x54], eax
jmp 0x422c8b
mov eax, 1
mov ecx, dword [esp + 0x130]
mov dword [esp], ecx
mov dword [esp + 4], 1
mov dword [esp + 0x50], eax
call fcn.004418a9
mov ecx, 0x4ce40fbb
mov edx, 0xe3cdb60a
mov dword [esp + 0x148], eax
cmp dword [esp + 0x148], 0
cmove ecx, edx
mov dword [esp + 0x128], ecx
jmp 0x422c8b
mov eax, dword [0x46e87c]
mov ecx, dword [esp + 0x144]
mov edx, esp
mov dword [edx], ecx
call eax
sub esp, 4
mov dword [esp + 0x1a8], 0xffffffff
mov dword [esp + 0x128], 0x88856ad1
mov dword [esp + 0x4c], eax
jmp 0x422c8b
mov eax, dword [0x46e81c]
mov ecx, dword [esp + 0x130]
mov edx, dword [esp + 0x148]
mov esi, dword [esp + 0x144]
mov edi, esp
mov dword [edi + 0xc], ecx
mov dword [edi + 8], edx
lea ecx, [esp + 0x130]
mov dword [edi], esi
mov dword [edi + 0x10], ecx
mov dword [edi + 4], 0x19
call eax
sub esp, 0x14
mov ecx, 0x3f029ba4
mov edx, 0x6589d218
cmp eax, 0
cmovne ecx, edx
mov dword [esp + 0x128], ecx
jmp 0x422c8b
mov eax, dword [esp + 0x148]
mov dword [esp + 0x1a0], eax
mov eax, dword [0x46e818]
mov ecx, dword [esp + 0x1a0]
mov ecx, dword [ecx]
mov edx, esp
lea esi, [esp + 0x19c]
mov dword [edx + 4], esi
mov dword [edx], ecx
call eax
sub esp, 8
mov ecx, 0x365620b
mov edx, 0xc0495141
cmp eax, 0
cmovne ecx, edx
mov dword [esp + 0x128], ecx
jmp 0x422c8b
mov eax, 0
mov ecx, 0x28
lea edx, [esp + 0x174]
mov dword [esp], edx
mov dword [esp + 4], 0
mov dword [esp + 8], 0x28
mov dword [esp + 0x48], eax
mov dword [esp + 0x44], ecx
call fcn.004064f0
lea ecx, [esp + 0x174]
mov edx, dword [0x44ed88]
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 0x40], eax
call fcn.00405b40
mov eax, 0
mov ecx, 0x28
lea edx, [esp + 0x14c]
mov dword [esp], edx
mov dword [esp + 4], 0
mov dword [esp + 8], 0x28
mov dword [esp + 0x3c], eax
mov dword [esp + 0x38], ecx
call fcn.004064f0
lea ecx, [esp + 0x14c]
mov edx, dword [0x44ed8c]
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 0x34], eax
call fcn.00405b40
lea eax, [esp + 0x174]
mov ecx, dword [esp + 0x19c]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00409500
mov ecx, 0x4971e0c4
mov edx, 0x3040037f
cmp eax, 0
cmovne ecx, edx
mov dword [esp + 0x128], ecx
jmp 0x422c8b
lea eax, [esp + 0x14c]
mov ecx, dword [esp + 0x19c]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00409500
mov ecx, 0x4971e0c4
mov edx, 0x4589a708
cmp eax, 0
cmovne ecx, edx
mov dword [esp + 0x128], ecx
jmp 0x422c8b
mov dword [0x46d584], 1
mov dword [esp + 0x128], 0x4589a708
jmp 0x422c8b
mov dword [esp + 0x128], 0x365620b
jmp 0x422c8b
mov dword [esp + 0x128], 0x3f029ba4
jmp 0x422c8b
mov dword [esp + 0x128], 0xd68931e
jmp 0x422c8b
mov eax, dword [0x46e87c]
mov ecx, dword [esp + 0x144]
mov edx, esp
mov dword [edx], ecx
call eax
sub esp, 4
mov dword [esp + 0x128], 0x6bb1a574
mov dword [esp + 0x30], eax
jmp 0x422c8b
mov dword [esp + 0x128], 0xf6a10ede
jmp 0x422c8b
lea eax, [esp + 0x134]
mov ecx, dword [0x46e814]
mov edx, esp
mov dword [edx + 0x28], eax
mov dword [edx + 0x20], 0
mov dword [edx + 0x1c], 0
mov dword [edx + 0x18], 0
mov dword [edx + 0x10], 0
mov dword [edx + 0xc], 0x220
mov dword [edx + 0x24], 0
mov dword [edx + 8], 0x20
lea eax, [esp + 0x138]
mov dword [edx], eax
mov dword [edx + 0x14], 0
mov dword [edx + 4], 2
call ecx
sub esp, 0x2c
mov ecx, 0xa531fee5
mov edx, 0xb47b68e8
cmp eax, 0
cmovne ecx, edx
mov dword [esp + 0x128], ecx
jmp 0x422c8b
mov eax, dword [0x46e810]
mov ecx, dword [esp + 0x134]
mov edx, esp
mov dword [edx + 8], 0x46d584
mov dword [edx + 4], ecx
mov dword [edx], 0
call eax
sub esp, 0xc
mov ecx, 0xa78edb78
mov edx, 0x6ad30510
cmp eax, 0
cmovne ecx, edx
mov dword [esp + 0x128], ecx
jmp 0x422c8b
mov dword [0x46d584], 0
mov dword [esp + 0x128], 0x6ad30510
jmp 0x422c8b
mov eax, dword [0x46e80c]
mov ecx, dword [esp + 0x134]
mov edx, esp
mov dword [edx], ecx
call eax
sub esp, 4
mov dword [esp + 0x128], 0xa531fee5
mov dword [esp + 0x2c], eax
jmp 0x422c8b
mov dword [esp + 0x128], 0xf6a10ede
jmp 0x422c8b
mov eax, 0x55f4c890
mov ecx, 0x37501bfc
cmp dword [esp + 0x148], 0
cmovne eax, ecx
mov dword [esp + 0x128], eax
jmp 0x422c8b
mov eax, dword [esp + 0x148]
mov dword [esp], eax
call fcn.00441871
mov dword [esp + 0x128], 0x55f4c890
jmp 0x422c8b
mov dword [0x46d580], 1
mov eax, dword [0x46d584]
mov dword [esp + 0x1a8], eax
mov dword [esp + 0x128], 0x88856ad1
jmp 0x422c8b
mov eax, dword [esp + 0x1a8]
lea esp, [ebp - 8]
pop esi
pop edi
pop ebp
ret
jmp 0x422164