Function at 0x421020
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 [0x447320]
mov dword [esp + 0x148], eax
mov cx, word [0x447324]
mov word [esp + 0x14c], cx
mov dword [esp + 0x140], 0
mov eax, dword [0x46c660]
mov dword [esp + 0x1b8], eax
mov dword [esp + 0x128], 0xe13be449
mov eax, dword [esp + 0x128]
mov ecx, eax
sub ecx, 0xa59ece2f
mov dword [esp + 0x124], eax
mov dword [esp + 0x120], ecx
jg 0x4210eb
jmp 0x4210cd
mov eax, dword [esp + 0x124]
sub eax, 0x95f30b0f
mov dword [esp + 0x11c], eax
je 0x421c07
jmp 0x421655
mov eax, dword [esp + 0x124]
sub eax, 0x74049402
mov dword [esp + 0x118], eax
jg 0x42163a
jmp 0x421109
mov eax, dword [esp + 0x124]
sub eax, 0xa65197ba
mov dword [esp + 0x114], eax
jg 0x421145
jmp 0x421127
mov eax, dword [esp + 0x124]
sub eax, 0xa59ece30
mov dword [esp + 0x110], eax
je 0x421c83
jmp 0x421655
mov eax, dword [esp + 0x124]
sub eax, 0xa7ae0b4b
mov dword [esp + 0x10c], eax
jg 0x421181
jmp 0x421163
mov eax, dword [esp + 0x124]
sub eax, 0xa65197bb
mov dword [esp + 0x108], eax
je 0x4217dc
jmp 0x421655
mov eax, dword [esp + 0x124]
sub eax, 0xaaed278c
mov dword [esp + 0x104], eax
jg 0x4211bd
jmp 0x42119f
mov eax, dword [esp + 0x124]
sub eax, 0xa7ae0b4c
mov dword [esp + 0x100], eax
je 0x421868
jmp 0x421655
mov eax, dword [esp + 0x124]
sub eax, 0xc23b04d2
mov dword [esp + 0xfc], eax
jg 0x4211f9
jmp 0x4211db
mov eax, dword [esp + 0x124]
sub eax, 0xaaed278d
mov dword [esp + 0xf8], eax
je 0x421732
jmp 0x421655
mov eax, dword [esp + 0x124]
sub eax, 0xc8470b3c
mov dword [esp + 0xf4], eax
jg 0x421235
jmp 0x421217
mov eax, dword [esp + 0x124]
sub eax, 0xc23b04d3
mov dword [esp + 0xf0], eax
je 0x421c30
jmp 0x421655
mov eax, dword [esp + 0x124]
sub eax, 0xd1404fe2
mov dword [esp + 0xec], eax
jg 0x421271
jmp 0x421253
mov eax, dword [esp + 0x124]
sub eax, 0xc8470b3d
mov dword [esp + 0xe8], eax
je 0x421791
jmp 0x421655
mov eax, dword [esp + 0x124]
sub eax, 0xd6339d26
mov dword [esp + 0xe4], eax
jg 0x4212ad
jmp 0x42128f
mov eax, dword [esp + 0x124]
sub eax, 0xd1404fe3
mov dword [esp + 0xe0], eax
je 0x421b1f
jmp 0x421655
mov eax, dword [esp + 0x124]
sub eax, 0xe13be448
mov dword [esp + 0xdc], eax
jg 0x4212e9
jmp 0x4212cb
mov eax, dword [esp + 0x124]
sub eax, 0xd6339d27
mov dword [esp + 0xd8], eax
je 0x421810
jmp 0x421655
mov eax, dword [esp + 0x124]
sub eax, 0xe1db0b96
mov dword [esp + 0xd4], eax
jg 0x421325
jmp 0x421307
mov eax, dword [esp + 0x124]
sub eax, 0xe13be449
mov dword [esp + 0xd0], eax
je 0x42165a
jmp 0x421655
mov eax, dword [esp + 0x124]
sub eax, 0xe340a13d
mov dword [esp + 0xcc], eax
jg 0x421361
jmp 0x421343
mov eax, dword [esp + 0x124]
sub eax, 0xe1db0b97
mov dword [esp + 0xc8], eax
je 0x421bac
jmp 0x421655
mov eax, dword [esp + 0x124]
sub eax, 0xf096b4ab
mov dword [esp + 0xc4], eax
jg 0x42139d
jmp 0x42137f
mov eax, dword [esp + 0x124]
sub eax, 0xe340a13e
mov dword [esp + 0xc0], eax
je 0x421c40
jmp 0x421655
mov eax, dword [esp + 0x124]
sub eax, 0xfa95acd4
mov dword [esp + 0xbc], eax
jg 0x4213d9
jmp 0x4213bb
mov eax, dword [esp + 0x124]
sub eax, 0xf096b4ac
mov dword [esp + 0xb8], eax
je 0x421bed
jmp 0x421655
mov eax, dword [esp + 0x124]
sub eax, 0x45ae07a
mov dword [esp + 0xb4], eax
jg 0x421415
jmp 0x4213f7
mov eax, dword [esp + 0x124]
sub eax, 0xfa95acd5
mov dword [esp + 0xb0], eax
je 0x421ac6
jmp 0x421655
mov eax, dword [esp + 0x124]
sub eax, 0x11fbeeaf
mov dword [esp + 0xac], eax
jg 0x421451
jmp 0x421433
mov eax, dword [esp + 0x124]
sub eax, 0x45ae07b
mov dword [esp + 0xa8], eax
je 0x4218b5
jmp 0x421655
mov eax, dword [esp + 0x124]
sub eax, 0x1c9008d5
mov dword [esp + 0xa4], eax
jg 0x42148d
jmp 0x42146f
mov eax, dword [esp + 0x124]
sub eax, 0x11fbeeb0
mov dword [esp + 0xa0], eax
je 0x421c64
jmp 0x421655
mov eax, dword [esp + 0x124]
sub eax, 0x37df6bfd
mov dword [esp + 0x9c], eax
jg 0x4214c9
jmp 0x4214ab
mov eax, dword [esp + 0x124]
sub eax, 0x1c9008d6
mov dword [esp + 0x98], eax
je 0x421680
jmp 0x421655
mov eax, dword [esp + 0x124]
sub eax, 0x396570f0
mov dword [esp + 0x94], eax
jg 0x421505
jmp 0x4214e7
mov eax, dword [esp + 0x124]
sub eax, 0x37df6bfe
mov dword [esp + 0x90], eax
je 0x4216e5
jmp 0x421655
mov eax, dword [esp + 0x124]
sub eax, 0x3dfb6529
mov dword [esp + 0x8c], eax
jg 0x421541
jmp 0x421523
mov eax, dword [esp + 0x124]
sub eax, 0x396570f1
mov dword [esp + 0x88], eax
je 0x421aac
jmp 0x421655
mov eax, dword [esp + 0x124]
sub eax, 0x4de0c79f
mov dword [esp + 0x84], eax
jg 0x42157d
jmp 0x42155f
mov eax, dword [esp + 0x124]
sub eax, 0x3dfb652a
mov dword [esp + 0x80], eax
je 0x421b2f
jmp 0x421655
mov eax, dword [esp + 0x124]
sub eax, 0x4f47671d
mov dword [esp + 0x7c], eax
jg 0x4215b3
jmp 0x421598
mov eax, dword [esp + 0x124]
sub eax, 0x4de0c7a0
mov dword [esp + 0x78], eax
je 0x421ad6
jmp 0x421655
mov eax, dword [esp + 0x124]
sub eax, 0x597d5885
mov dword [esp + 0x74], eax
jg 0x4215e9
jmp 0x4215ce
mov eax, dword [esp + 0x124]
sub eax, 0x4f47671e
mov dword [esp + 0x70], eax
je 0x421ae6
jmp 0x421655
mov eax, dword [esp + 0x124]
sub eax, 0x597d5886
mov dword [esp + 0x6c], eax
je 0x421af6
jmp 0x421604
mov eax, dword [esp + 0x124]
sub eax, 0x7270b966
mov dword [esp + 0x68], eax
je 0x421ca9
jmp 0x42161f
mov eax, dword [esp + 0x124]
sub eax, 0x72c6c4a0
mov dword [esp + 0x64], eax
je 0x421a74
jmp 0x421655
mov eax, dword [esp + 0x124]
sub eax, 0x74049403
mov dword [esp + 0x60], eax
je 0x42169c
jmp 0x421655
jmp 0x421cb8
mov eax, 0x74049403
mov ecx, 0x1c9008d6
mov edx, dword [esp + 0x1b8]
cmp edx, 0
cmovne eax, ecx
mov dword [esp + 0x128], eax
jmp 0x421cb8
mov eax, dword [0x46c664]
mov dword [esp + 0x1b4], eax
mov dword [esp + 0x128], 0x7270b966
jmp 0x421cb8
mov eax, 0
mov dword [esp], 0
mov dword [esp + 0x5c], eax
call fcn.004056a0
mov ecx, 0x3dfb652a
mov edx, 0x37df6bfe
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 0x421cb8
mov eax, dword [0x46d900]
mov ecx, dword [0x46d968]
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, 0xd1404fe3
mov edx, 0xaaed278d
cmp eax, 0
cmovne ecx, edx
mov dword [esp + 0x128], ecx
jmp 0x421cb8
mov eax, dword [0x46d8fc]
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, 0x597d5886
mov edx, 0xc8470b3d
cmp dword [esp + 0x140], 0
cmovne ecx, edx
mov dword [esp + 0x128], ecx
mov dword [esp + 0x54], eax
jmp 0x421cb8
mov eax, 1
mov ecx, dword [esp + 0x140]
mov dword [esp], ecx
mov dword [esp + 4], 1
mov dword [esp + 0x50], eax
call fcn.00440a9d
mov ecx, 0xd6339d27
mov edx, 0xa65197bb
mov dword [esp + 0x154], eax
cmp dword [esp + 0x154], 0
cmove ecx, edx
mov dword [esp + 0x128], ecx
jmp 0x421cb8
mov eax, dword [0x46d95c]
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], 0x7270b966
mov dword [esp + 0x4c], eax
jmp 0x421cb8
mov eax, dword [0x46d8fc]
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, 0x4f47671e
mov edx, 0xa7ae0b4c
cmp eax, 0
cmovne ecx, edx
mov dword [esp + 0x128], ecx
jmp 0x421cb8
mov eax, dword [esp + 0x154]
mov dword [esp + 0x1ac], eax
mov eax, dword [0x46d8f8]
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, 0x4de0c7a0
mov edx, 0x45ae07b
cmp eax, 0
cmovne ecx, edx
mov dword [esp + 0x128], ecx
jmp 0x421cb8
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.00406910
lea ecx, [esp + 0x180]
mov edx, 0
mov esi, dword [0x44dd44]
movzx esi, word [esi]
mov dword [esp + 0x138], esi
mov esi, dword [esp + 0x138]
mov edi, edx
sub edi, esi
mov esi, edx
sub esi, 1
add edi, esi
sub edx, edi
mov esi, dword [0x44dd44]
movzx edx, word [esi + edx*2]
mov dword [esp + 0x134], edx
mov edx, dword [esp + 0x134]
mov esi, dword [0x44dd44]
mov edi, dword [esp + 0x138]
shl edi, 1
add esi, edi
add esi, 4
mov edi, dword [0x44dd44]
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.00406910
lea ecx, [esp + 0x158]
mov edx, dword [0x44dd48]
movzx edx, word [edx]
mov dword [esp + 0x130], edx
mov edx, dword [esp + 0x130]
sub edx, 0x9d3d86b9
add edx, 1
add edx, 0x9d3d86b9
mov esi, dword [0x44dd48]
shl edx, 1
add esi, edx
movzx edx, word [esi]
mov dword [esp + 0x12c], edx
mov edx, dword [esp + 0x12c]
mov esi, dword [0x44dd48]
mov edi, dword [esp + 0x130]
shl edi, 1
add esi, edi
add esi, 4
mov edi, dword [0x44dd48]
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.00409810
mov ecx, 0x396570f1
mov edx, 0x72c6c4a0
cmp eax, 0
cmovne ecx, edx
mov dword [esp + 0x128], ecx
jmp 0x421cb8
lea eax, [esp + 0x158]
mov ecx, dword [esp + 0x1a8]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00409810
mov ecx, 0x396570f1
mov edx, 0xfa95acd5
cmp eax, 0
cmovne ecx, edx
mov dword [esp + 0x128], ecx
jmp 0x421cb8
mov dword [0x46c664], 1
mov dword [esp + 0x128], 0xfa95acd5
jmp 0x421cb8
mov dword [esp + 0x128], 0x4de0c7a0
jmp 0x421cb8
mov dword [esp + 0x128], 0x4f47671e
jmp 0x421cb8
mov dword [esp + 0x128], 0x597d5886
jmp 0x421cb8
mov eax, dword [0x46d95c]
mov ecx, dword [esp + 0x150]
mov edx, esp
mov dword [edx], ecx
call eax
sub esp, 4
mov dword [esp + 0x128], 0xd1404fe3
mov dword [esp + 0x30], eax
jmp 0x421cb8
mov dword [esp + 0x128], 0xe340a13e
jmp 0x421cb8
lea eax, [esp + 0x144]
mov ecx, dword [0x46d8f4]
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, 0xc23b04d3
mov edx, 0xe1db0b97
cmp eax, 0
cmovne ecx, edx
mov dword [esp + 0x128], ecx
jmp 0x421cb8
mov eax, dword [0x46d8f0]
mov ecx, dword [esp + 0x144]
mov edx, esp
mov dword [edx + 8], 0x46c664
mov dword [edx + 4], ecx
mov dword [edx], 0
call eax
sub esp, 0xc
mov ecx, 0xf096b4ac
mov edx, 0x95f30b0f
cmp eax, 0
cmovne ecx, edx
mov dword [esp + 0x128], ecx
jmp 0x421cb8
mov dword [0x46c664], 0
mov dword [esp + 0x128], 0x95f30b0f
jmp 0x421cb8
mov eax, dword [0x46d8ec]
mov ecx, dword [esp + 0x144]
mov edx, esp
mov dword [edx], ecx
call eax
sub esp, 4
mov dword [esp + 0x128], 0xc23b04d3
mov dword [esp + 0x2c], eax
jmp 0x421cb8
mov dword [esp + 0x128], 0xe340a13e
jmp 0x421cb8
mov eax, 0xa59ece30
mov ecx, 0x11fbeeb0
cmp dword [esp + 0x154], 0
cmovne eax, ecx
mov dword [esp + 0x128], eax
jmp 0x421cb8
mov eax, dword [esp + 0x154]
mov dword [esp], eax
call fcn.00440a65
mov dword [esp + 0x128], 0xa59ece30
jmp 0x421cb8
mov dword [0x46c660], 1
mov eax, dword [0x46c664]
mov dword [esp + 0x1b4], eax
mov dword [esp + 0x128], 0x7270b966
jmp 0x421cb8
mov eax, dword [esp + 0x1b4]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
jmp 0x4210a5