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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xa4
push ebx
mov dword [esp + 0x3c], edx
xor eax, eax
push esi
mov dword [esp + 0xc], 0xc68ec0ae
inc eax
mov dword [esp + 0x1c], 0x5943e2f7
mov esi, ecx
push edi
mov dword [esp + 0x34], 0x8217c712
lea ecx, [esp + 0x88]
mov dword [esp + 0x1c], 0xe5ec3521
mov dword [esp + 0x14], eax
push eax
call fcn.0041cf5c
xor ebx, ebx
mov dword [esp + 0x14], ebx
jmp 0x421b00
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x88]
mov dword [eax + ecx*4], ebx
inc dword [esp + 0x14]
cmp dword [esp + 0x14], 1
jl 0x421aee
push 5
mov dword [esp + 0x14], 0x15
pop edi
jmp 0x421ba1
mov dword [esp + 0x14], edi
mov dword [esp + 0x28], 0xffffffff
mov dword [esp + 0x24], 0x8bc698dc
mov dword [esp + 0x28], 0xffffffff
mov eax, dword [esp + 0x10]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x28]
mov eax, dword [esp + 0x10]
mov eax, dword [esp + 0x28]
mov eax, dword [esp + 0x14]
mov eax, dword [esp + 0x14]
mov eax, dword [esp + 0x20]
mov dword [esp + 0x20], 0x14dd4
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x20]
sub edx, eax
mov eax, dword [esp + 0x10]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setg cl
mov dword [esp + 0x34], ecx
mov eax, dword [esp + 0x34]
mov dword [esp + 0x1c], ebx
mov eax, dword [esp + 0x1c]
mov eax, dword [esp + 0x24]
mov eax, dword [esp + 0x14]
mov dword [esp + 0x24], 1
mov eax, dword [esp + 0x24]
mov dword [esp + 0x28], eax
dec dword [esp + 0x10]
cmp dword [esp + 0x10], 0xffffffeb
jg 0x421b17
mov dword [esp + 0x20], 0xffffffec
jmp 0x421ca8
mov dword [esp + 0x28], 1
mov dword [esp + 0x1c], ebx
jmp 0x421c99
mov dword [esp + 0x10], 0xfd89d684
mov dword [esp + 0x34], ebx
jmp 0x421c3d
mov dword [esp + 0x24], 0xffffffff
cmp dword [esp + 0x10], ebx
jne 0x421c44
mov dword [esp + 0x10], ebx
jmp 0x421c32
mov dword [esp + 0x14], 0xae7
xor ecx, ecx
mov eax, dword [esp + 0x14]
mov eax, dword [esp + 0x24]
mov eax, dword [esp + 0x20]
mov eax, dword [esp + 0x28]
mov eax, dword [esp + 0x28]
mov eax, dword [esp + 0x28]
mov eax, dword [esp + 0x28]
test eax, eax
sets cl
cmp ecx, dword [esp + 0x24]
jne 0x421c28
cmp dword [esp + 0x14], ebx
je 0x421c28
xor eax, eax
inc eax
jmp 0x421c2a
mov eax, ebx
mov dword [esp + 0x14], eax
inc dword [esp + 0x10]
cmp dword [esp + 0x10], 2
jle 0x421bec
dec dword [esp + 0x34]
cmp dword [esp + 0x34], 0xffffffed
jg 0x421bd8
mov dword [esp + 0x10], ebx
jmp 0x421c8e
mov dword [esp + 0x14], ebx
jmp 0x421c84
mov byte [esp + 0x1b], bl
cmp byte [esp + 0x1b], bl
je 0x421c6f
push 0x22b1
push 0x1425
push 0xec9
call dword [0xabd03c]
mov byte [esp + 0x1b], bl
cmp byte [esp + 0x1b], bl
je 0x421c80
push ebx
call dword [0xabd020]
inc dword [esp + 0x14]
cmp dword [esp + 0x14], ebx
jle 0x421c50
dec dword [esp + 0x10]
cmp dword [esp + 0x10], 0xfffffffe
je 0x421c4a
dec dword [esp + 0x1c]
cmp dword [esp + 0x1c], 0xffffffec
jl 0x421bca
inc dword [esp + 0x20]
cmp dword [esp + 0x20], 0xc
jg 0x421bb9
lea ecx, [esp + 0x88]
call fcn.0041d2be
mov dword [esp + 0x2c], edi
mov dword [esp + 0x10], 0x654fddd3
push 3
pop edi
mov dword [esp + 0x14], edi
mov dword [esp + 0x70], 0xfffffffb
mov dword [esp + 0x2c], 0xfffffff4
cmp dword [esp + 0x2c], 0x1d
jg 0x421e0a
mov eax, 0xc326874b
mov dword [esp + 0x24], 0xfffffff6
xor edx, edx
mov dword [esp + 0x74], eax
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], eax
mov dword [esp + 0x80], eax
mov dword [esp + 0x20], 0x54292978
mov dword [esp + 0x1c], ebx
mov eax, dword [esp + 0x14]
mov dword [esp + 0x24], 0xe665969a
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x7c], ecx
mov eax, dword [esp + 0x2c]
cmp ecx, eax
mov eax, dword [esp + 0x20]
setge dl
xor ebx, ebx
cmp edx, eax
mov eax, dword [esp + 0x20]
setg bl
xor ecx, ecx
sub ebx, 0x10f9732b
cmp ebx, eax
setne cl
xor edx, edx
sub ecx, 0xa
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x2c]
cmp ecx, eax
mov eax, dword [esp + 0x10]
setle dl
xor ebx, ebx
test edx, edx
setg bl
xor ecx, ecx
cmp ebx, eax
sete cl
xor ebx, ebx
add ecx, dword [esp + 0x10]
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x1c], edi
cmp dword [esp + 0x1c], ebx
jl 0x421df6
mov dword [esp + 0x14], edi
cmp dword [esp + 0x14], ebx
jl 0x421df0
mov dword [esp + 0x10], ebx
jmp 0x421db7
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + eax*4 + 0x74]
mov eax, dword [esp + 0x10]
add ecx, 8
mov dword [esp + eax*4 + 0x74], ecx
inc dword [esp + 0x10]
cmp dword [esp + 0x10], edi
jle 0x421da0
mov dword [esp + 0x20], ebx
jmp 0x421de4
mov dword [esp + 0x10], ebx
jmp 0x421dd9
mov eax, dword [esp + 0x10]
mov dword [esp + eax*4 + 0x74], 0xffffffff
inc dword [esp + 0x10]
cmp dword [esp + 0x10], 4
jl 0x421dc9
inc dword [esp + 0x20]
cmp dword [esp + 0x20], edi
jle 0x421dc3
dec dword [esp + 0x14]
jns 0x421d9a
dec dword [esp + 0x1c]
jns 0x421d90
inc dword [esp + 0x2c]
mov eax, 0xc326874b
cmp dword [esp + 0x2c], 0x1d
jle 0x421cf2
lea edx, [esp + 0x70]
lea ecx, [esp + 0x2c]
call fcn.0041fcc4
cmp dword [esi + 0x10], ebx
jne 0x421e23
xor al, al
jmp 0x4220a3
push edi
lea ecx, [esp + 0x64]
call fcn.0041cf5c
mov dword [esp + 0x48], 0xfffffff8
lea ecx, [esp + 0xa0]
mov dword [esp + 0x24], 0x6fc6088b
push 1
call fcn.0041cf5c
mov dword [esp + 0x38], ebx
jmp 0x421e64
mov ecx, dword [esp + 0x38]
mov eax, dword [esp + 0x60]
mov dword [eax + ecx*4], 0x86e871d9
inc dword [esp + 0x38]
cmp dword [esp + 0x38], edi
jl 0x421e51
lea edx, [esp + 0xa0]
lea ecx, [esp + 0x38]
call fcn.0041df53
mov eax, dword [esp + 0x60]
mov ecx, dword [eax]
test ecx, ecx
jne 0x421ebc
mov eax, dword [esp + 0x48]
mov ecx, 0xfff8
sub ecx, eax
mov eax, dword [esp + 0x60]
jne 0x421e9e
cmp dword [eax + 4], ebx
jne 0x421e9e
mov edx, ebx
jmp 0x421ea1
xor edx, edx
inc edx
mov ecx, dword [eax]
cmp edx, ecx
jle 0x421eb1
cmp dword [eax + 4], ebx
je 0x421eb1
xor edx, edx
inc edx
jmp 0x421eb3
mov edx, ebx
cmp edx, dword [eax + 4]
jl 0x421ebc
mov edx, ebx
jmp 0x421ebf
xor edx, edx
inc edx
xor eax, eax
cmp edx, ecx
lea edx, [esp + 0x60]
setne al
lea ecx, [esp + 0x48]
mov dword [esp + 0x24], eax
call fcn.0041e0b9
lea ecx, [esp + 0xa0]
call fcn.0041d2be
lea ecx, [esp + 0x60]
call fcn.0041d2be
lea ecx, [esp + 0x44]
call fcn.0041e5e2
mov dword [esp + 0x24], 0x204e2db5
call fcn.0041ff23
call fcn.00420091
cmp dword [esi + 0x14], 0x10
jb 0x421f11
mov eax, dword [esi]
jmp 0x421f13
mov eax, esi
cmp dword [esi + 0x14], 0x10
mov dword [esp + 0x40], eax
jb 0x421f21
mov edx, dword [esi]
jmp 0x421f23
mov edx, esi
mov ecx, dword [esi + 0x10]
add ecx, edx
cmp eax, ecx
je 0x42207c
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x58], 0x876a47cd
mov dword [esp + 0x54], 0xfffffff9
mov dword [esp + 0x5c], 0x9caaf7cc
mov dword [esp + 0x84], 0xfffffff8
mov dword [esp + 0x3c], ebx
jmp 0x421ff1
mov dword [esp + 0x50], 0x38ec3268
lea ecx, [esp + 0x94]
mov dword [esp + 0x4c], ebx
push 4
call fcn.0041cf5c
mov dword [esp + 0x6c], 0xcf8610f1
lea edx, [esp + 0x94]
lea ecx, [esp + 0xac]
call fcn.0041ebb3
lea eax, [esp + 0x54]
push eax
lea eax, [esp + 0x5c]
push eax
lea eax, [esp + 0x58]
push eax
lea edx, [esp + 0x48]
lea ecx, [esp + 0x58]
call fcn.0041edb8
add esp, 0xc
lea eax, [esp + 0x6c]
lea edx, [esp + 0x58]
push eax
push ecx
lea eax, [esp + 0x5c]
push eax
lea eax, [esp + 0x68]
push eax
lea eax, [esp + 0x5c]
push eax
lea eax, [esp + 0x64]
push eax
lea ecx, [esp + 0x9c]
call fcn.004201d4
add esp, 0x18
lea ecx, [esp + 0x94]
call fcn.0041d2be
dec dword [esp + 0x3c]
cmp dword [esp + 0x3c], 0xffffffe9
jle 0x421f60
lea ecx, [esp + 0x33]
mov byte [esp + 0x33], bl
call fcn.00420b49
mov eax, dword [esp + 0x40]
mov al, byte [eax]
cmp al, 0x30
jl 0x42206e
cmp al, 0x39
jg 0x42206e
mov dword [esp + 0x1c], 9
mov dword [esp + 0x1c], ebx
jmp 0x422050
mov dword [esp + 0x14], 0xffffffff
call fcn.0041f68e
mov dword [esp + 0x14], 0xffffffec
jmp 0x422045
call fcn.0042117c
inc dword [esp + 0x14]
cmp dword [esp + 0x14], 0xb
jg 0x42203c
inc dword [esp + 0x1c]
cmp dword [esp + 0x1c], 0x19
jne 0x422025
lea edx, [esp + 0x40]
lea ecx, [esp + 0x44]
call fcn.00421413
mov eax, dword [esp + 0x40]
inc eax
jmp 0x421f13
lea ecx, [esp + 0x44]
call fcn.0041f9e6
jmp 0x421e1c
mov dword [esp + 0x24], 0xfffffff6
call fcn.004216e7
mov byte [esp + 0x1b], bl
cmp byte [esp + 0x1b], 0
je 0x4220a1
push ebx
push 0x595
push ebx
call dword [0xabd010]
mov al, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret