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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x88
mov esi, esp
mov ebx, 0x74617e9e
mov dword [esi + 0x30], 0xf167558
jmp 0x415320
mov dword [esi + 0x30], 0xc4153e05
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esi + 0x30]
cmp eax, 0x8aecb7c7
jg 0x415340
cmp eax, 0x815e895f
jne 0x415320
jmp 0x415312
cmp eax, 0x946be8ec
jg 0x415360
cmp eax, 0x8aecb7c8
jne 0x415320
mov dword [esi + 0x30], 0x20863260
jmp 0x415320
cmp eax, 0x7d351029
jg 0x4153ac
cmp eax, 0x7a4cd14d
jg 0x4153cb
cmp eax, 0x76a32a4a
jg 0x41544f
cmp eax, 0x729fc366
jg 0x41548f
cmp eax, 0x960247ef
jg 0x4154b3
cmp eax, 0x946be8ed
jne 0x415320
mov eax, dword [esi + 0x34]
mov eax, dword [eax]
mov ecx, dword [esi + 0x58]
mov dword [ecx], eax
mov dword [esi + 0x30], 0x36e486f7
jmp 0x415320
cmp eax, 0x7d35102a
jne 0x415320
call fcn.00410460
mov eax, dword [esi + 0x4c]
mov dword [esi + 0x30], 0xbf8e45a
jmp 0x415320
cmp eax, 0x7a4cd14e
jne 0x415320
mov eax, dword [esi + 0x58]
mov eax, dword [eax]
mov ecx, dword [esi + 0x78]
mov edx, dword [esi + 0x38]
mov edi, dword [esi + 0x54]
mov edi, dword [edi]
add edi, dword [edx]
sub esp, 0xc
mov dword [esp + 8], eax
mov dword [esp + 4], ecx
mov dword [esp], edi
call fcn.00403870
add esp, 0xc
mov eax, dword [esi + 0x58]
xor ecx, ecx
sub ecx, dword [eax]
mov eax, dword [esi + 0x54]
sub ecx, dword [eax]
neg ecx
mov eax, dword [esi + 0x54]
mov dword [eax], ecx
mov eax, dword [esi + 0x58]
mov ecx, dword [esi + 0x34]
mov ecx, dword [ecx]
add ecx, ebx
sub ecx, dword [eax]
add ecx, 0x8b9e8162
mov eax, dword [esi + 0x34]
mov dword [eax], ecx
mov eax, dword [esi + 0x60]
mov dword [eax], 0x400
mov eax, dword [esi + 0x60]
mov ecx, dword [eax]
mov edx, dword [esi + 0x34]
mov eax, 0x998246ab
cmp ecx, dword [edx]
ja 0x415447
mov eax, 0xb592f5dd
mov dword [esi + 0x30], eax
jmp 0x415320
cmp eax, 0x76a32a4b
jne 0x415320
mov eax, dword [esi + 0x4c]
mov eax, dword [eax + 0xc]
sub esp, 4
mov dword [esp], eax
call fcn.0041b880
add esp, 4
mov ecx, dword [esi + 0x4c]
mov dword [ecx + 0x14], eax
mov ecx, dword [esi + 0x4c]
mov eax, 0xa49cc0ef
cmp dword [ecx + 0x14], 0
jne 0x415487
mov eax, 0x48955b5
mov dword [esi + 0x30], eax
jmp 0x415320
cmp eax, 0x729fc367
jne 0x415320
mov eax, dword [esi + 0x3c]
cmp dword [eax], 0
setne byte [esi + 0x81]
mov dword [esi + 0x30], 0xf89c5dc6
jmp 0x415320
cmp eax, 0x98182771
jg 0x4154d1
cmp eax, 0x960247f0
jne 0x415320
mov dword [esi + 0x30], 0xb76e6df0
jmp 0x415320
cmp eax, 0x998246aa
jg 0x4154ef
cmp eax, 0x98182772
jne 0x415320
mov dword [esi + 0x30], 0x20863260
jmp 0x415320
cmp eax, 0x9e899396
jg 0x41550d
cmp eax, 0x998246ab
jne 0x415320
mov dword [esi + 0x30], 0x698ade0e
jmp 0x415320
cmp eax, 0xa122e81e
jg 0x41553f
cmp eax, 0x9e899397
jne 0x415320
mov eax, dword [esi + 0x4c]
mov eax, dword [eax + 0x10]
sub esp, 4
mov dword [esp], eax
call fcn.0041a48b
add esp, 4
mov dword [esi + 0x30], 0xfe9d34c9
jmp 0x415320
cmp eax, 0xa13278e4
jg 0x41556b
cmp eax, 0xa122e81f
jne 0x415320
mov ecx, dword [esi + 0x5c]
mov eax, 0xf5b56445
cmp dword [ecx], 0
je 0x415563
mov eax, 0x815e895f
mov dword [esi + 0x30], eax
jmp 0x415320
cmp eax, 0xa3d224cc
jg 0x415597
cmp eax, 0xa13278e5
jne 0x415320
mov ecx, dword [esi + 0x60]
mov eax, 0xa122e81f
cmp dword [ecx], 0
jne 0x41558f
mov eax, 0x4c6149f8
mov dword [esi + 0x30], eax
jmp 0x415320
cmp eax, 0xa49cc0ee
jg 0x4155b5
cmp eax, 0xa3d224cd
jne 0x415320
mov dword [esi + 0x30], 0xe49d4ba8
jmp 0x415320
cmp eax, 0xaee3aa51
jg 0x4155d3
cmp eax, 0xa49cc0ef
jne 0x415320
mov dword [esi + 0x30], 0xdfe4f706
jmp 0x415320
cmp eax, 0xb03fb594
jg 0x4155fb
cmp eax, 0xaee3aa52
jne 0x415320
mov eax, dword [esi + 0x3c]
mov eax, dword [eax]
mov ecx, dword [esi + 0x58]
mov dword [ecx], eax
mov dword [esi + 0x30], 0x53bb1ba5
jmp 0x415320
cmp eax, 0xb592f5dc
jg 0x415619
cmp eax, 0xb03fb595
jne 0x415320
mov dword [esi + 0x30], 0xbf8e45a
jmp 0x415320
cmp eax, 0xb76e6def
jg 0x41563f
cmp eax, 0xb592f5dd
jne 0x415320
mov eax, dword [esi + 0x78]
mov ecx, dword [esi + 0x48]
mov dword [ecx], eax
mov dword [esi + 0x30], 0x1ab4283b
jmp 0x415320
cmp eax, 0xbab8e642
jg 0x4156c1
cmp eax, 0xb76e6df0
jne 0x415320
mov eax, dword [esi + 0x58]
mov eax, dword [eax]
mov ecx, dword [esi + 0x40]
mov edx, dword [esi + 0x50]
mov edx, dword [edx]
add edx, dword [ecx]
mov ecx, dword [esi + 0x74]
sub esp, 0xc
mov dword [esp + 8], eax
mov dword [esp + 4], edx
mov dword [esp], ecx
call fcn.00403870
add esp, 0xc
mov eax, dword [esi + 0x58]
mov eax, dword [eax]
mov ecx, dword [esi + 0x50]
add eax, dword [ecx]
mov ecx, dword [esi + 0x50]
mov dword [ecx], eax
mov eax, dword [esi + 0x58]
mov ecx, dword [esi + 0x3c]
mov ecx, dword [ecx]
add ecx, 0xee82f480
sub ecx, dword [eax]
add ecx, 0x117d0b80
mov eax, dword [esi + 0x3c]
mov dword [eax], ecx
mov eax, dword [esi + 0x58]
mov eax, dword [eax]
mov ecx, dword [esi + 0x5c]
mov dword [ecx], eax
mov eax, dword [esi + 0x74]
mov ecx, dword [esi + 0x44]
mov dword [ecx], eax
mov dword [esi + 0x30], 0xee7ffeb5
jmp 0x415320
cmp eax, 0xbd992875
jg 0x4156ee
cmp eax, 0xbab8e643
jne 0x415320
mov ecx, dword [esi + 0x4c]
mov eax, 0x60b99461
cmp dword [ecx + 0x14], 0
jne 0x4156e6
mov eax, 0xcc5b3180
mov dword [esi + 0x30], eax
jmp 0x415320
cmp eax, 0xbe996bde
jg 0x41571c
cmp eax, 0xbd992876
jne 0x415320
mov al, byte [esi + 0x80]
test al, al
mov eax, 0x76a32a4b
jne 0x415714
mov eax, 0xa3d224cd
mov dword [esi + 0x30], eax
jmp 0x415320
cmp eax, 0xc2e4a9b8
jg 0x415744
cmp eax, 0xbe996bdf
jne 0x415320
mov eax, dword [esi + 0x34]
mov eax, dword [eax]
mov ecx, dword [esi + 0x60]
mov dword [ecx], eax
mov dword [esi + 0x30], 0x698ade0e
jmp 0x415320
cmp eax, 0xc4153e04
jg 0x415907
cmp eax, 0xc2e4a9b9
jne 0x415320
mov eax, 4
call fcn.0041a460
mov dword [esi + 0x28], esp
mov eax, 4
call fcn.0041a460
mov dword [esi + 0x24], esp
mov eax, 4
call fcn.0041a460
mov dword [esi + 0x20], esp
mov eax, 4
call fcn.0041a460
mov dword [esi + 0x2c], esp
mov eax, 4
call fcn.0041a460
mov dword [esi + 0x1c], esp
mov eax, 4
call fcn.0041a460
mov dword [esi + 0x18], esp
mov eax, 0x8c
call fcn.0041a460
mov eax, esp
and eax, 0xfffffff8
mov dword [esi], eax
mov esp, eax
mov ecx, eax
mov eax, 4
call fcn.0041a460
mov dword [esi + 0x14], esp
mov eax, 4
call fcn.0041a460
mov dword [esi + 0x10], esp
mov eax, 4
call fcn.0041a460
mov eax, 4
call fcn.0041a460
mov dword [esi + 0xc], esp
mov eax, 4
call fcn.0041a460
mov dword [esi + 8], esp
mov eax, 4
call fcn.0041a460
mov eax, 4
call fcn.0041a460
mov eax, 4
call fcn.0041a460
mov edx, esp
mov eax, 4
call fcn.0041a460
mov eax, 0x400
call fcn.0041a460
mov eax, 0x400
call fcn.0041a460
mov eax, 8
call fcn.0041a460
mov dword [esi + 4], esp
mov eax, dword [ebp + 0x14]
mov edi, dword [esi + 0x28]
mov dword [edi], eax
mov eax, dword [ebp + 0x10]
mov edi, dword [esi + 0x24]
mov dword [edi], eax
mov eax, dword [ebp + 0xc]
mov edi, dword [esi + 0x20]
mov dword [edi], eax
mov eax, dword [esi + 0x1c]
mov dword [eax], 0
mov eax, dword [esi + 0x18]
mov dword [eax], 0
mov eax, dword [esi + 0x14]
mov dword [eax], 0xd
mov eax, dword [esi + 0x10]
mov dword [eax], 0
mov eax, dword [esi + 0xc]
mov dword [eax], 0
mov eax, dword [esi + 8]
mov dword [eax], 0x400
mov dword [edx], 0xffffffff
mov eax, dword [ebp + 8]
mov edi, dword [esi + 0x2c]
mov dword [edi], eax
sub esp, 0xc
mov dword [esp], ecx
mov dword [esp + 8], 0x8c
mov dword [esp + 4], 0
call fcn.00404690
add esp, 0xc
mov eax, dword [edi]
sub esp, 0xc
mov dword [esp + 4], eax
mov edi, dword [esi + 4]
mov dword [esp], edi
mov dword [esp + 8], 5
call fcn.00403870
add esp, 0xc
sub esp, 0xc
mov dword [esp + 4], edi
mov eax, dword [esi]
mov dword [esp], eax
mov dword [esp + 8], 5
call fcn.004163d0
add esp, 0xc
mov dword [esi + 0x30], 0x155062d0
jmp 0x415320
cmp eax, 0xcc5b317f
jg 0x415a02
cmp eax, 0xc4153e05
jne 0x415320
mov eax, dword [esi + 0x5c]
cmp dword [eax], 0
sete al
movzx eax, al
mov dword [esi + 0x2c], eax
mov ecx, dword [esi + 0x60]
mov eax, dword [ecx]
mov dword [esi + 0x28], eax
mov edx, dword [esi + 0x48]
mov eax, dword [edx]
mov dword [esi + 0x24], eax
mov edi, dword [esi + 0x5c]
mov eax, dword [edi]
mov dword [esi + 0x20], eax
mov eax, dword [esi + 0x44]
mov eax, dword [eax]
mov dword [esi + 0x1c], eax
mov edi, dword [esi + 0x4c]
mov ecx, dword [esi + 0x64]
mov eax, dword [esi + 0x68]
sub esp, 0x20
mov edx, dword [esi + 0x2c]
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], eax
mov eax, dword [esi + 0x28]
mov dword [esp + 0x14], eax
mov eax, dword [esi + 0x24]
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], ecx
mov eax, dword [esi + 0x20]
mov dword [esp + 8], eax
mov eax, dword [esi + 0x1c]
mov dword [esp + 4], eax
mov dword [esp], edi
call fcn.00416670
add esp, 0x20
mov ecx, dword [esi + 0x70]
mov dword [ecx], eax
mov eax, dword [esi + 0x64]
mov ecx, dword [esi + 0x5c]
mov ecx, dword [ecx]
mov edx, 0xf453794b
add ecx, edx
sub ecx, dword [eax]
add ecx, 0xbac86b5
mov eax, dword [esi + 0x5c]
mov dword [eax], ecx
mov eax, dword [esi + 0x64]
mov eax, dword [eax]
mov ecx, dword [esi + 0x44]
add eax, dword [ecx]
mov ecx, dword [esi + 0x44]
mov dword [ecx], eax
mov eax, dword [esi + 0x68]
mov ecx, dword [esi + 0x60]
mov ecx, dword [ecx]
mov edx, 0xbc63914a
add ecx, edx
sub ecx, dword [eax]
add ecx, 0x439c6eb6
mov eax, dword [esi + 0x60]
mov dword [eax], ecx
mov eax, dword [esi + 0x68]
mov eax, dword [eax]
mov ecx, dword [esi + 0x48]
add eax, dword [ecx]
mov ecx, dword [esi + 0x48]
mov dword [ecx], eax
mov eax, dword [esi + 0x60]
cmp dword [eax], 0
sete byte [esi + 0x82]
mov dword [esi + 0x30], 0x4b93fb20
jmp 0x415320
cmp eax, 0xd308a403
jg 0x415a2f
cmp eax, 0xcc5b3180
jne 0x415320
mov ecx, dword [esi + 0x4c]
mov eax, 0x33549b95
cmp dword [ecx + 0x10], 0
jne 0x415a27
mov eax, 0x39bd63fa
mov dword [esi + 0x30], eax
jmp 0x415320
cmp eax, 0xdb544cbd
jg 0x415a5a
cmp eax, 0xd308a404
jne 0x415320
mov al, byte [esi + 0x7f]
test al, al
mov eax, 0x3e6bc86e
jne 0x415a52
mov eax, 0xf34b28f0
mov dword [esi + 0x30], eax
jmp 0x415320
cmp eax, 0xdfe4f705
jg 0x415a78
cmp eax, 0xdb544cbe
jne 0x415320
mov dword [esi + 0x30], 0xdfe4f706
jmp 0x415320
cmp eax, 0xe1140d83
jg 0x415a96
cmp eax, 0xdfe4f706
jne 0x415320
mov dword [esi + 0x30], 0x98182772
jmp 0x415320
cmp eax, 0xe2919cde
jg 0x415ab4
cmp eax, 0xe1140d84
jne 0x415320
mov dword [esi + 0x30], 0x7a4cd14e
jmp 0x415320
cmp eax, 0xe49d4ba7
jg 0x415ad2
cmp eax, 0xe2919cdf
jne 0x415320
mov dword [esi + 0x30], 0xa13278e5
jmp 0x415320
cmp eax, 0xe973ef4c
jg 0x415afa
cmp eax, 0xe49d4ba8
jne 0x415320
mov eax, dword [esi + 0x4c]
mov dword [eax + 0x14], 0
mov dword [esi + 0x30], 0x8aecb7c8
jmp 0x415320
cmp eax, 0xee769e6b
jg 0x415b28
cmp eax, 0xe973ef4d
jne 0x415320
mov al, byte [esi + 0x83]
test al, al
mov eax, 0xf2df4841
jne 0x415b20
mov eax, 0xe2919cdf
mov dword [esi + 0x30], eax
jmp 0x415320
cmp eax, 0xee7ffeb4
jg 0x415b61
cmp eax, 0xee769e6c
jne 0x415320
mov eax, dword [esi + 0x58]
mov dword [eax], 0x400
mov eax, dword [esi + 0x58]
mov ecx, dword [eax]
mov edx, dword [esi + 0x34]
mov eax, 0x69929355
cmp ecx, dword [edx]
ja 0x415b59
mov eax, 0x7a4cd14e
mov dword [esi + 0x30], eax
jmp 0x415320
cmp eax, 0xf2df4840
jg 0x415b7f
cmp eax, 0xee7ffeb5
jne 0x415320
mov dword [esi + 0x30], 0x815e895f
jmp 0x415320
cmp eax, 0xf34b28ef
jg 0x415b9d
cmp eax, 0xf2df4841
jne 0x415320
mov dword [esi + 0x30], 0xbab8e643
jmp 0x415320
cmp eax, 0xf5b56444
jg 0x415bfb
cmp eax, 0xf34b28f0
jne 0x415320
mov eax, dword [esi + 0x4c]
mov ecx, dword [eax]
mov eax, dword [esi + 0x4c]
add ecx, dword [eax + 4]
mov eax, 0x300
shl eax, cl
neg eax
mov ecx, 0x736
sub ecx, eax
add ecx, ecx
sub esp, 4
mov dword [esp], ecx
call fcn.0041b880
add esp, 4
mov ecx, dword [esi + 0x4c]
mov dword [ecx + 0x10], eax
mov ecx, dword [esi + 0x4c]
mov eax, 0xb03fb595
cmp dword [ecx + 0x10], 0
jne 0x415bf3
mov eax, 0xf53fd76
mov dword [esi + 0x30], eax
jmp 0x415320
cmp eax, 0xf5bdd2d5
jg 0x415c19
cmp eax, 0xf5b56445
jne 0x415320
mov dword [esi + 0x30], 0x729fc367
jmp 0x415320
cmp eax, 0xf89c5dc5
jg 0x415c44
cmp eax, 0xf5bdd2d6
jne 0x415320
mov eax, dword [esi + 0x70]
cmp dword [eax], 0
setne byte [esi + 0x83]
mov dword [esi + 0x30], 0xe973ef4d
jmp 0x415320
cmp eax, 0xfb9c623e
jg 0x415c72
cmp eax, 0xf89c5dc6
jne 0x415320
mov al, byte [esi + 0x81]
test al, al
mov eax, 0x1f0ca6ff
jne 0x415c6a
mov eax, 0x815e895f
mov dword [esi + 0x30], eax
jmp 0x415320
cmp eax, 0xfe9d34c8
jg 0x415c90
cmp eax, 0xfb9c623f
jne 0x415320
mov dword [esi + 0x30], 0x39bd63fa
jmp 0x415320
cmp eax, 0x48955b4
jg 0x415cc2
cmp eax, 0xfe9d34c9
jne 0x415320
mov eax, dword [esi + 0x4c]
mov eax, dword [eax + 0x10]
sub esp, 4
mov dword [esp], eax
call fcn.0041a48b
add esp, 4
mov dword [esi + 0x30], 0xfb9c623f
jmp 0x415320
cmp eax, 0xbf8e459
jg 0x415ce0
cmp eax, 0x48955b5
jne 0x415320
mov dword [esi + 0x30], 0xbab8e643
jmp 0x415320
cmp eax, 0xf167557
jg 0x415d11
cmp eax, 0xbf8e45a
jne 0x415320
call fcn.00410460
mov eax, dword [esi + 0x4c]
cmp dword [eax + 0xc], 0
setne byte [esi + 0x80]
mov dword [esi + 0x30], 0xbd992876
jmp 0x415320
cmp eax, 0xf53fd75
jg 0x415d2f
cmp eax, 0xf167558
jne 0x415320
mov dword [esi + 0x30], 0x155062d0
jmp 0x415320
cmp eax, 0x155062cf
jg 0x415d4d
cmp eax, 0xf53fd76
jne 0x415320
mov dword [esi + 0x30], 0xbab8e643
jmp 0x415320
cmp eax, 0x1ab4283a
jg 0x415f2e
cmp eax, 0x155062d0
jne 0x415320
mov eax, 4
call fcn.0041a460
mov dword [esi + 0x34], esp
mov eax, 4
call fcn.0041a460
mov dword [esi + 0x38], esp
mov eax, 4
call fcn.0041a460
mov dword [esi + 0x3c], esp
mov eax, 4
call fcn.0041a460
mov dword [esi + 0x40], esp
mov eax, 4
call fcn.0041a460
mov dword [esi + 0x44], esp
mov eax, 4
call fcn.0041a460
mov dword [esi + 0x48], esp
mov eax, 0x8c
call fcn.0041a460
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
mov dword [esi + 0x4c], eax
mov eax, 4
call fcn.0041a460
mov dword [esi + 0x50], esp
mov eax, 4
call fcn.0041a460
mov dword [esi + 0x54], esp
mov eax, 4
call fcn.0041a460
mov dword [esi + 0x58], esp
mov eax, 4
call fcn.0041a460
mov dword [esi + 0x5c], esp
mov eax, 4
call fcn.0041a460
mov dword [esi + 0x60], esp
mov eax, 4
call fcn.0041a460
mov dword [esi + 0x64], esp
mov eax, 4
call fcn.0041a460
mov dword [esi + 0x68], esp
mov eax, 4
call fcn.0041a460
mov dword [esi + 0x6c], esp
mov eax, 4
call fcn.0041a460
mov dword [esi + 0x70], esp
mov eax, 0x400
call fcn.0041a460
mov dword [esi + 0x74], esp
mov eax, 0x400
call fcn.0041a460
mov dword [esi + 0x78], esp
mov eax, 8
call fcn.0041a460
mov edi, esp
mov eax, dword [esi + 0x34]
mov ecx, dword [ebp + 0x14]
mov dword [eax], ecx
mov eax, dword [esi + 0x38]
mov ecx, dword [ebp + 0x10]
mov dword [eax], ecx
mov eax, dword [esi + 0x3c]
mov ecx, dword [ebp + 0xc]
mov dword [eax], ecx
mov eax, dword [esi + 0x40]
mov ecx, dword [ebp + 8]
mov dword [eax], ecx
mov eax, dword [esi + 0x44]
mov dword [eax], 0
mov eax, dword [esi + 0x48]
mov dword [eax], 0
mov eax, dword [esi + 0x50]
mov dword [eax], 0xd
mov eax, dword [esi + 0x54]
mov dword [eax], 0
mov eax, dword [esi + 0x5c]
mov dword [eax], 0
mov eax, dword [esi + 0x60]
mov dword [eax], 0x400
mov eax, dword [esi + 0x6c]
mov dword [eax], 0xffffffff
mov eax, dword [esi + 0x4c]
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 8], 0x8c
mov dword [esp + 4], 0
call fcn.00404690
add esp, 0xc
mov eax, dword [esi + 0x40]
mov eax, dword [eax]
sub esp, 0xc
mov dword [esp + 4], eax
mov dword [esp], edi
mov dword [esp + 8], 5
call fcn.00403870
add esp, 0xc
mov eax, dword [esi + 0x4c]
sub esp, 0xc
mov dword [esp + 4], edi
mov dword [esp], eax
mov dword [esp + 8], 5
call fcn.004163d0
add esp, 0xc
test eax, eax
setne byte [esi + 0x7f]
mov dword [esi + 0x30], 0xd308a404
jmp 0x415320
cmp eax, 0x1ae0a44e
jg 0x415f4c
cmp eax, 0x1ab4283b
jne 0x415320
mov dword [esi + 0x30], 0xf5bdd2d6
jmp 0x415320
cmp eax, 0x1f0b3c7d
jg 0x41603b
cmp eax, 0x1ae0a44f
jne 0x415320
mov eax, dword [esi + 0x5c]
cmp dword [eax], 0
sete al
movzx eax, al
mov dword [esi + 0x2c], eax
mov ecx, dword [esi + 0x60]
mov eax, dword [ecx]
mov dword [esi + 0x28], eax
mov edx, dword [esi + 0x48]
mov eax, dword [edx]
mov dword [esi + 0x24], eax
mov edi, dword [esi + 0x5c]
mov eax, dword [edi]
mov dword [esi + 0x20], eax
mov eax, dword [esi + 0x44]
mov eax, dword [eax]
mov dword [esi + 0x1c], eax
mov edi, dword [esi + 0x4c]
mov ecx, dword [esi + 0x64]
mov eax, dword [esi + 0x68]
sub esp, 0x20
mov edx, dword [esi + 0x2c]
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], eax
mov eax, dword [esi + 0x28]
mov dword [esp + 0x14], eax
mov eax, dword [esi + 0x24]
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], ecx
mov eax, dword [esi + 0x20]
mov dword [esp + 8], eax
mov eax, dword [esi + 0x1c]
mov dword [esp + 4], eax
mov dword [esp], edi
call fcn.00416670
add esp, 0x20
mov ecx, dword [esi + 0x70]
mov dword [ecx], eax
mov eax, dword [esi + 0x64]
mov ecx, dword [esi + 0x5c]
mov ecx, dword [ecx]
add ecx, 0x50a70e87
sub ecx, dword [eax]
add ecx, 0xaf58f179
mov eax, dword [esi + 0x5c]
mov dword [eax], ecx
mov eax, dword [esi + 0x64]
mov eax, dword [eax]
mov ecx, dword [esi + 0x44]
add eax, dword [ecx]
mov ecx, dword [esi + 0x44]
mov dword [ecx], eax
mov eax, dword [esi + 0x68]
mov ecx, dword [esi + 0x60]
mov ecx, dword [ecx]
add ecx, 0x86803e9d
sub ecx, dword [eax]
add ecx, 0x797fc163
mov eax, dword [esi + 0x60]
mov dword [eax], ecx
mov eax, dword [esi + 0x68]
mov eax, dword [eax]
mov ecx, dword [esi + 0x48]
add eax, dword [ecx]
mov ecx, dword [esi + 0x48]
mov dword [ecx], eax
mov eax, dword [esi + 0x60]
mov dword [esi + 0x30], 0xc4153e05
jmp 0x415320
cmp eax, 0x69929354
jg 0x416128
cmp eax, 0x698ade0d
jg 0x41613f
cmp eax, 0x665583d7
jg 0x416160
cmp eax, 0x60b99460
jg 0x416177
cmp eax, 0x5be4ce57
jg 0x4161a2
cmp eax, 0x53bb1ba4
jg 0x4161bc
cmp eax, 0x4e7c2dba
jg 0x4161dd
cmp eax, 0x4c6149f7
jg 0x416259
cmp eax, 0x4b93fb1f
jg 0x416279
cmp eax, 0x444c0627
jg 0x4162a0
cmp eax, 0x3e6bc86d
jg 0x4162b7
cmp eax, 0x39bd63f9
jg 0x4162d5
cmp eax, 0x36e486f6
jg 0x4162e5
cmp eax, 0x33549b94
jg 0x416306
cmp eax, 0x2dca8e57
jg 0x41631d
cmp eax, 0x25bcc2cb
jg 0x41633e
cmp eax, 0x1f0b3c7e
je 0x416355
cmp eax, 0x1f0ca6ff
jne 0x416364
mov eax, dword [esi + 0x58]
mov dword [eax], 0x400
mov eax, dword [esi + 0x58]
mov ecx, dword [eax]
mov edx, dword [esi + 0x3c]
mov eax, 0x444c0628
cmp ecx, dword [edx]
ja 0x416120
mov eax, 0x960247f0
mov dword [esi + 0x30], eax
jmp 0x415320
cmp eax, 0x69929355
jne 0x415320
mov dword [esi + 0x30], 0x36e486f7
jmp 0x415320
cmp eax, 0x698ade0e
jne 0x415320
mov eax, dword [esi + 0x34]
mov eax, dword [eax]
mov ecx, dword [esi + 0x60]
mov dword [ecx], eax
mov dword [esi + 0x30], 0x665583d8
jmp 0x415320
cmp eax, 0x665583d8
jne 0x415320
mov dword [esi + 0x30], 0xb592f5dd
jmp 0x415320
cmp eax, 0x60b99461
jne 0x415320
mov eax, dword [esi + 0x4c]
mov eax, dword [eax + 0x14]
sub esp, 4
mov dword [esp], eax
call fcn.0041a48b
add esp, 4
mov dword [esi + 0x30], 0xcc5b3180
jmp 0x415320
cmp eax, 0x5be4ce58
jne 0x415320
mov eax, dword [esi + 0x3c]
mov dword [esi + 0x30], 0x729fc367
jmp 0x415320
cmp eax, 0x53bb1ba5
jne 0x415320
mov eax, dword [esi + 0x3c]
mov eax, dword [eax]
mov ecx, dword [esi + 0x58]
mov dword [ecx], eax
mov dword [esi + 0x30], 0x25bcc2cc
jmp 0x415320
cmp eax, 0x4e7c2dbb
jne 0x415320
mov eax, dword [esi + 0x58]
mov eax, dword [eax]
mov ecx, dword [esi + 0x40]
mov edx, dword [esi + 0x50]
mov edx, dword [edx]
add edx, dword [ecx]
mov ecx, dword [esi + 0x74]
sub esp, 0xc
mov dword [esp + 8], eax
mov dword [esp + 4], edx
mov dword [esp], ecx
call fcn.00403870
add esp, 0xc
mov eax, dword [esi + 0x58]
mov eax, dword [eax]
mov ecx, dword [esi + 0x50]
add eax, dword [ecx]
mov ecx, dword [esi + 0x50]
mov dword [ecx], eax
mov eax, dword [esi + 0x58]
mov ecx, dword [esi + 0x3c]
mov ecx, dword [ecx]
mov edx, 0xa843160d
add ecx, edx
sub ecx, dword [eax]
add ecx, 0x57bce9f3
mov eax, dword [esi + 0x3c]
mov dword [eax], ecx
mov eax, dword [esi + 0x58]
mov eax, dword [eax]
mov ecx, dword [esi + 0x5c]
mov dword [ecx], eax
mov eax, dword [esi + 0x74]
mov ecx, dword [esi + 0x44]
mov dword [ecx], eax
mov dword [esi + 0x30], 0xb76e6df0
jmp 0x415320
cmp eax, 0x4c6149f8
jne 0x415320
mov eax, dword [esi + 0x6c]
mov dword [eax], 0
mov dword [esi + 0x30], 0xbab8e643
jmp 0x415320
cmp eax, 0x4b93fb20
jne 0x415320
mov al, byte [esi + 0x82]
test al, al
mov eax, 0xee769e6c
jne 0x416298
mov eax, 0x1ab4283b
mov dword [esi + 0x30], eax
jmp 0x415320
cmp eax, 0x444c0628
jne 0x415320
mov dword [esi + 0x30], 0x53bb1ba5
jmp 0x415320
cmp eax, 0x3e6bc86e
jne 0x415320
mov eax, dword [sym.imp.ADVAPI32.dll_AddAccessAllowedObjectAce]
mov edi, dword [eax]
mov dword [esi + 0x30], 0xbab8e643
jmp 0x415320
cmp eax, 0x39bd63fa
jne 0x415320
jmp 0x4163a7
cmp eax, 0x36e486f7
jne 0x415320
mov eax, dword [esi + 0x34]
mov eax, dword [eax]
mov ecx, dword [esi + 0x58]
mov dword [ecx], eax
mov dword [esi + 0x30], 0xe1140d84
jmp 0x415320
cmp eax, 0x33549b95
jne 0x415320
mov dword [esi + 0x30], 0xfe9d34c9
jmp 0x415320
cmp eax, 0x2dca8e58
jne 0x415320
mov eax, dword [esi + 0x4c]
mov dword [eax + 0x14], 0
mov dword [esi + 0x30], 0xe49d4ba8
jmp 0x415320
cmp eax, 0x25bcc2cc
jne 0x415320
mov dword [esi + 0x30], 0x960247f0
jmp 0x415320
mov eax, dword [esi + 0x70]
mov dword [esi + 0x30], 0xf5bdd2d6
jmp 0x415320
cmp eax, 0x20863260
jne 0x415320
mov eax, dword [esi + 0x78]
mov ecx, dword [esi + 0x48]
mov dword [ecx], eax
mov eax, dword [esi + 0x3c]
mov eax, dword [eax]
add eax, 0xfffffff3
mov ecx, dword [esi + 0x3c]
mov dword [ecx], eax
mov eax, dword [esi + 0x4c]
mov dword [eax + 0x84], 0xfffffffe
mov eax, dword [esi + 0x4c]
mov dword [eax + 0x58], 0
mov dword [esi + 0x30], 0xa122e81f
jmp 0x415320
mov eax, dword [esi + 0x6c]
mov eax, dword [eax]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret