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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x1c0
mov eax, dword [ebp + 8]
mov dword [esp + 0x1b0], eax
mov dword [esp + 0x1ac], 0
mov dword [esp + 0x1a8], 0
mov dword [esp + 0x154], 0
mov dword [esp + 0x150], 0
mov eax, dword [0x44dd80]
mov dword [esp + 0x148], eax
mov cx, word [0x44dd84]
mov word [esp + 0x14c], cx
mov dword [esp + 0x140], 0
mov eax, dword [0x46c5e0]
mov dword [esp + 0x1b8], eax
mov dword [esp + 0x128], 0x8262aea7
mov eax, dword [esp + 0x128]
mov ecx, eax
sub ecx, 0x86a8c774
mov dword [esp + 0x124], eax
mov dword [esp + 0x120], ecx
jg 0x42114b
jmp 0x42112d
mov eax, dword [esp + 0x124]
sub eax, 0x8262aea7
mov dword [esp + 0x11c], eax
je 0x4216ba
jmp 0x4216b5
mov eax, dword [esp + 0x124]
sub eax, 0x87360295
mov dword [esp + 0x118], eax
jg 0x421187
jmp 0x421169
mov eax, dword [esp + 0x124]
sub eax, 0x86a8c775
mov dword [esp + 0x114], eax
je 0x421b1f
jmp 0x4216b5
mov eax, dword [esp + 0x124]
sub eax, 0x98821a81
mov dword [esp + 0x110], eax
jg 0x4211c3
jmp 0x4211a5
mov eax, dword [esp + 0x124]
sub eax, 0x87360296
mov dword [esp + 0x10c], eax
je 0x421b3f
jmp 0x4216b5
mov eax, dword [esp + 0x124]
sub eax, 0x98a2da52
mov dword [esp + 0x108], eax
jg 0x4211ff
jmp 0x4211e1
mov eax, dword [esp + 0x124]
sub eax, 0x98821a82
mov dword [esp + 0x104], eax
je 0x421b78
jmp 0x4216b5
mov eax, dword [esp + 0x124]
sub eax, 0xa0e02983
mov dword [esp + 0x100], eax
jg 0x42123b
jmp 0x42121d
mov eax, dword [esp + 0x124]
sub eax, 0x98a2da53
mov dword [esp + 0xfc], eax
je 0x421745
jmp 0x4216b5
mov eax, dword [esp + 0x124]
sub eax, 0xcaf15a57
mov dword [esp + 0xf8], eax
jg 0x421277
jmp 0x421259
mov eax, dword [esp + 0x124]
sub eax, 0xa0e02984
mov dword [esp + 0xf4], eax
je 0x4216fc
jmp 0x4216b5
mov eax, dword [esp + 0x124]
sub eax, 0xd95bd241
mov dword [esp + 0xf0], eax
jg 0x4212b3
jmp 0x421295
mov eax, dword [esp + 0x124]
sub eax, 0xcaf15a58
mov dword [esp + 0xec], eax
je 0x421b88
jmp 0x4216b5
mov eax, dword [esp + 0x124]
sub eax, 0xdb2151c8
mov dword [esp + 0xe8], eax
jg 0x4212ef
jmp 0x4212d1
mov eax, dword [esp + 0x124]
sub eax, 0xd95bd242
mov dword [esp + 0xe4], eax
je 0x421c05
jmp 0x4216b5
mov eax, dword [esp + 0x124]
sub eax, 0xdf5f8d71
mov dword [esp + 0xe0], eax
jg 0x42132b
jmp 0x42130d
mov eax, dword [esp + 0x124]
sub eax, 0xdb2151c9
mov dword [esp + 0xdc], eax
je 0x421b2f
jmp 0x4216b5
mov eax, dword [esp + 0x124]
sub eax, 0xe0e51925
mov dword [esp + 0xd8], eax
jg 0x421367
jmp 0x421349
mov eax, dword [esp + 0x124]
sub eax, 0xdf5f8d72
mov dword [esp + 0xd4], eax
je 0x421c99
jmp 0x4216b5
mov eax, dword [esp + 0x124]
sub eax, 0xf6ed727d
mov dword [esp + 0xd0], eax
jg 0x4213a3
jmp 0x421385
mov eax, dword [esp + 0x124]
sub eax, 0xe0e51926
mov dword [esp + 0xcc], eax
je 0x421915
jmp 0x4216b5
mov eax, dword [esp + 0x124]
sub eax, 0x8f40ae6
mov dword [esp + 0xc8], eax
jg 0x4213df
jmp 0x4213c1
mov eax, dword [esp + 0x124]
sub eax, 0xf6ed727e
mov dword [esp + 0xc4], eax
je 0x421acd
jmp 0x4216b5
mov eax, dword [esp + 0x124]
sub eax, 0x11742d20
mov dword [esp + 0xc0], eax
jg 0x42141b
jmp 0x4213fd
mov eax, dword [esp + 0x124]
sub eax, 0x8f40ae7
mov dword [esp + 0xbc], eax
je 0x421b4f
jmp 0x4216b5
mov eax, dword [esp + 0x124]
sub eax, 0x21f47cf5
mov dword [esp + 0xb8], eax
jg 0x421457
jmp 0x421439
mov eax, dword [esp + 0x124]
sub eax, 0x11742d21
mov dword [esp + 0xb4], eax
je 0x421cdc
jmp 0x4216b5
mov eax, dword [esp + 0x124]
sub eax, 0x2a45e8a6
mov dword [esp + 0xb0], eax
jg 0x421493
jmp 0x421475
mov eax, dword [esp + 0x124]
sub eax, 0x21f47cf6
mov dword [esp + 0xac], eax
je 0x421c46
jmp 0x4216b5
mov eax, dword [esp + 0x124]
sub eax, 0x2d09139f
mov dword [esp + 0xa8], eax
jg 0x4214cf
jmp 0x4214b1
mov eax, dword [esp + 0x124]
sub eax, 0x2a45e8a7
mov dword [esp + 0xa4], eax
je 0x421c89
jmp 0x4216b5
mov eax, dword [esp + 0x124]
sub eax, 0x34def1a6
mov dword [esp + 0xa0], eax
jg 0x42150b
jmp 0x4214ed
mov eax, dword [esp + 0x124]
sub eax, 0x2d0913a0
mov dword [esp + 0x9c], eax
je 0x42183c
jmp 0x4216b5
mov eax, dword [esp + 0x124]
sub eax, 0x4e7974b0
mov dword [esp + 0x98], eax
jg 0x421547
jmp 0x421529
mov eax, dword [esp + 0x124]
sub eax, 0x34def1a7
mov dword [esp + 0x94], eax
je 0x421b05
jmp 0x4216b5
mov eax, dword [esp + 0x124]
sub eax, 0x4fb4c82f
mov dword [esp + 0x90], eax
jg 0x421583
jmp 0x421565
mov eax, dword [esp + 0x124]
sub eax, 0x4e7974b1
mov dword [esp + 0x8c], eax
je 0x421870
jmp 0x4216b5
mov eax, dword [esp + 0x124]
sub eax, 0x5da1b66e
mov dword [esp + 0x88], eax
jg 0x4215bf
jmp 0x4215a1
mov eax, dword [esp + 0x124]
sub eax, 0x4fb4c830
mov dword [esp + 0x84], eax
je 0x421792
jmp 0x4216b5
mov eax, dword [esp + 0x124]
sub eax, 0x5efde06c
mov dword [esp + 0x80], eax
jg 0x4215f8
jmp 0x4215dd
mov eax, dword [esp + 0x124]
sub eax, 0x5da1b66f
mov dword [esp + 0x7c], eax
je 0x4218c8
jmp 0x4216b5
mov eax, dword [esp + 0x124]
sub eax, 0x75371279
mov dword [esp + 0x78], eax
jg 0x42162e
jmp 0x421613
mov eax, dword [esp + 0x124]
sub eax, 0x5efde06d
mov dword [esp + 0x74], eax
je 0x421d02
jmp 0x4216b5
mov eax, dword [esp + 0x124]
sub eax, 0x76be500d
mov dword [esp + 0x70], eax
jg 0x421664
jmp 0x421649
mov eax, dword [esp + 0x124]
sub eax, 0x7537127a
mov dword [esp + 0x6c], eax
je 0x4216e0
jmp 0x4216b5
mov eax, dword [esp + 0x124]
sub eax, 0x76be500e
mov dword [esp + 0x68], eax
je 0x421c60
jmp 0x42167f
mov eax, dword [esp + 0x124]
sub eax, 0x778caf32
mov dword [esp + 0x64], eax
je 0x421cbd
jmp 0x42169a
mov eax, dword [esp + 0x124]
sub eax, 0x77a16d0a
mov dword [esp + 0x60], eax
je 0x4217f1
jmp 0x4216b5
jmp 0x421d11
mov eax, 0xa0e02984
mov ecx, 0x7537127a
mov edx, dword [esp + 0x1b8]
cmp edx, 0
cmovne eax, ecx
mov dword [esp + 0x128], eax
jmp 0x421d11
mov eax, dword [0x46c5e4]
mov dword [esp + 0x1b4], eax
mov dword [esp + 0x128], 0x5efde06d
jmp 0x421d11
mov eax, 0
mov dword [esp], 0
mov dword [esp + 0x5c], eax
call fcn.004056b0
mov ecx, 0xcaf15a58
mov edx, 0x98a2da53
mov esi, dword [esp + 0x1b0]
mov dword [esi], eax
mov dword [esp + 0x13c], eax
cmp dword [esp + 0x13c], 6
cmovae ecx, edx
mov dword [esp + 0x128], ecx
jmp 0x421d11
mov eax, dword [0x46d880]
mov ecx, dword [0x46d8e8]
mov dword [esp + 0x58], eax
call ecx
mov ecx, esp
lea edx, [esp + 0x150]
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, 0x98821a82
mov edx, 0x4fb4c830
cmp eax, 0
cmovne ecx, edx
mov dword [esp + 0x128], ecx
jmp 0x421d11
mov eax, dword [0x46d87c]
mov ecx, dword [esp + 0x140]
mov edx, dword [esp + 0x150]
mov esi, esp
mov dword [esi + 0xc], ecx
mov dword [esi + 8], 0
mov dword [esi + 4], 0x19
lea ecx, [esp + 0x140]
mov dword [esi], edx
mov dword [esi + 0x10], ecx
call eax
sub esp, 0x14
mov ecx, 0x8f40ae7
mov edx, 0x77a16d0a
cmp dword [esp + 0x140], 0
cmovne ecx, edx
mov dword [esp + 0x128], ecx
mov dword [esp + 0x54], eax
jmp 0x421d11
mov eax, 1
mov ecx, dword [esp + 0x140]
mov dword [esp], ecx
mov dword [esp + 4], 1
mov dword [esp + 0x50], eax
call fcn.00440a3e
mov ecx, 0x4e7974b1
mov edx, 0x2d0913a0
mov dword [esp + 0x154], eax
cmp dword [esp + 0x154], 0
cmove ecx, edx
mov dword [esp + 0x128], ecx
jmp 0x421d11
mov eax, dword [0x46d8dc]
mov ecx, dword [esp + 0x150]
mov edx, esp
mov dword [edx], ecx
call eax
sub esp, 4
mov dword [esp + 0x1b4], 0xffffffff
mov dword [esp + 0x128], 0x5efde06d
mov dword [esp + 0x4c], eax
jmp 0x421d11
mov eax, dword [0x46d87c]
mov ecx, dword [esp + 0x140]
mov edx, dword [esp + 0x154]
mov esi, dword [esp + 0x150]
mov edi, esp
mov dword [edi + 0xc], ecx
mov dword [edi + 8], edx
lea ecx, [esp + 0x140]
mov dword [edi], esi
mov dword [edi + 0x10], ecx
mov dword [edi + 4], 0x19
call eax
sub esp, 0x14
mov ecx, 0x87360296
mov edx, 0x5da1b66f
cmp eax, 0
cmovne ecx, edx
mov dword [esp + 0x128], ecx
jmp 0x421d11
mov eax, dword [esp + 0x154]
mov dword [esp + 0x1ac], eax
mov eax, dword [0x46d878]
mov ecx, dword [esp + 0x1ac]
mov ecx, dword [ecx]
mov edx, esp
lea esi, [esp + 0x1a8]
mov dword [edx + 4], esi
mov dword [edx], ecx
call eax
sub esp, 8
mov ecx, 0xdb2151c9
mov edx, 0xe0e51926
cmp eax, 0
cmovne ecx, edx
mov dword [esp + 0x128], ecx
jmp 0x421d11
mov eax, 0
mov ecx, 0x28
lea edx, [esp + 0x180]
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.004068f0
lea ecx, [esp + 0x180]
mov edx, dword [0x44dd88]
movzx edx, word [edx]
mov dword [esp + 0x138], edx
mov edx, dword [esp + 0x138]
add edx, 0x2479b878
add edx, 1
sub edx, 0x2479b878
mov esi, dword [0x44dd88]
movzx edx, word [esi + edx*2]
mov dword [esp + 0x134], edx
mov edx, dword [esp + 0x134]
mov esi, dword [0x44dd88]
mov edi, dword [esp + 0x138]
shl edi, 1
add esi, edi
add esi, 4
mov edi, dword [0x44dd88]
add edi, 2
mov ebx, dword [esp + 0x138]
mov dword [esp], ecx
mov dword [esp + 4], ebx
mov dword [esp + 8], edi
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], edx
mov dword [esp + 0x40], eax
call fcn.00405e10
mov eax, 0
mov ecx, 0x28
lea edx, [esp + 0x158]
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.004068f0
lea ecx, [esp + 0x158]
mov edx, dword [0x44dd8c]
movzx edx, word [edx]
mov dword [esp + 0x130], edx
mov edx, dword [esp + 0x130]
add edx, 0x4bdbbff7
add edx, 1
sub edx, 0x4bdbbff7
mov esi, dword [0x44dd8c]
movzx edx, word [esi + edx*2]
mov dword [esp + 0x12c], edx
mov edx, dword [esp + 0x12c]
mov esi, dword [0x44dd8c]
mov edi, dword [esp + 0x130]
shl edi, 1
add esi, edi
add esi, 4
mov edi, dword [0x44dd8c]
add edi, 2
mov ebx, dword [esp + 0x130]
mov dword [esp], ecx
mov dword [esp + 4], ebx
mov dword [esp + 8], edi
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], edx
mov dword [esp + 0x34], eax
call fcn.00405e10
lea eax, [esp + 0x180]
mov ecx, dword [esp + 0x1a8]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00409840
mov ecx, 0x34def1a7
mov edx, 0xf6ed727e
cmp eax, 0
cmovne ecx, edx
mov dword [esp + 0x128], ecx
jmp 0x421d11
lea eax, [esp + 0x158]
mov ecx, dword [esp + 0x1a8]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00409840
mov ecx, 0x34def1a7
mov edx, 0x86a8c775
cmp eax, 0
cmovne ecx, edx
mov dword [esp + 0x128], ecx
jmp 0x421d11
mov dword [0x46c5e4], 1
mov dword [esp + 0x128], 0x86a8c775
jmp 0x421d11
mov dword [esp + 0x128], 0xdb2151c9
jmp 0x421d11
mov dword [esp + 0x128], 0x87360296
jmp 0x421d11
mov dword [esp + 0x128], 0x8f40ae7
jmp 0x421d11
mov eax, dword [0x46d8dc]
mov ecx, dword [esp + 0x150]
mov edx, esp
mov dword [edx], ecx
call eax
sub esp, 4
mov dword [esp + 0x128], 0x98821a82
mov dword [esp + 0x30], eax
jmp 0x421d11
mov dword [esp + 0x128], 0xdf5f8d72
jmp 0x421d11
lea eax, [esp + 0x144]
mov ecx, dword [0x46d874]
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 + 0x148]
mov dword [edx], eax
mov dword [edx + 0x14], 0
mov dword [edx + 4], 2
call ecx
sub esp, 0x2c
mov ecx, 0x2a45e8a7
mov edx, 0xd95bd242
cmp eax, 0
cmovne ecx, edx
mov dword [esp + 0x128], ecx
jmp 0x421d11
mov eax, dword [0x46d870]
mov ecx, dword [esp + 0x144]
mov edx, esp
mov dword [edx + 8], 0x46c5e4
mov dword [edx + 4], ecx
mov dword [edx], 0
call eax
sub esp, 0xc
mov ecx, 0x21f47cf6
mov edx, 0x76be500e
cmp eax, 0
cmovne ecx, edx
mov dword [esp + 0x128], ecx
jmp 0x421d11
mov dword [0x46c5e4], 0
mov dword [esp + 0x128], 0x76be500e
jmp 0x421d11
mov eax, dword [0x46d86c]
mov ecx, dword [esp + 0x144]
mov edx, esp
mov dword [edx], ecx
call eax
sub esp, 4
mov dword [esp + 0x128], 0x2a45e8a7
mov dword [esp + 0x2c], eax
jmp 0x421d11
mov dword [esp + 0x128], 0xdf5f8d72
jmp 0x421d11
mov eax, 0x11742d21
mov ecx, 0x778caf32
cmp dword [esp + 0x154], 0
cmovne eax, ecx
mov dword [esp + 0x128], eax
jmp 0x421d11
mov eax, dword [esp + 0x154]
mov dword [esp], eax
call fcn.00440a06
mov dword [esp + 0x128], 0x11742d21
jmp 0x421d11
mov dword [0x46c5e0], 1
mov eax, dword [0x46c5e4]
mov dword [esp + 0x1b4], eax
mov dword [esp + 0x128], 0x5efde06d
jmp 0x421d11
mov eax, dword [esp + 0x1b4]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
jmp 0x421105