Function at 0x1001e395
Capabilities:
Authenticate hmac
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x120
push ebx
push ebp
push esi
push edi
push dword [esp + 0x15c]
mov eax, edx
mov dword [esp + 0x130], ecx
push dword [esp + 0x15c]
mov dword [esp + 0x130], eax
push dword [esp + 0x15c]
push dword [esp + 0x15c]
push dword [esp + 0x15c]
push dword [esp + 0x15c]
push dword [esp + 0x15c]
push dword [esp + 0x15c]
push dword [esp + 0x15c]
push dword [esp + 0x15c]
push dword [esp + 0x15c]
push eax
movzx eax, cx
push eax
call fcn.100120b9
mov dword [esp + 0x48], 0x99c43c
add esp, 0x34
add dword [esp + 0x14], 0xbb14
xor edx, edx
shr dword [esp + 0x14], 0xb
xor ecx, ecx
xor dword [esp + 0x14], 0x134f
xor ebx, ebx
mov dword [esp + 0xb8], 0x27310
mov esi, 0x329d839
mov eax, dword [esp + 0xb8]
push 0x43
pop edi
div edi
push 0x1b
mov dword [esp + 0xbc], eax
xor edx, edx
add dword [esp + 0xbc], 0xe2f5
xor dword [esp + 0xbc], 0xec43
mov dword [esp + 0x110], 0x50046c
shl dword [esp + 0x110], 1
xor dword [esp + 0x110], 0xa00810
mov dword [esp + 0xc0], 0x7f268a
xor dword [esp + 0xc0], 0x5f915552
imul eax, dword [esp + 0xc0], 0x3e
pop edi
mov dword [esp + 0x1c], ecx
mov dword [esp + 0xbc], eax
xor dword [esp + 0xbc], 0x3bc08e50
mov dword [esp + 0x4c], 0xb299e8
shr dword [esp + 0x4c], 0xe
shl dword [esp + 0x4c], 0x10
imul eax, dword [esp + 0x4c], 0x42
mov dword [esp + 0x4c], eax
xor dword [esp + 0x4c], 0xb8144000
mov dword [esp + 0xf0], 0x620921
or dword [esp + 0xf0], 0xbe88b167
xor dword [esp + 0xf0], 0xbeaab967
mov dword [esp + 0x84], 0xae09b0
or dword [esp + 0x84], 0xde677f7d
xor dword [esp + 0x84], 0xc5d04777
xor dword [esp + 0x84], 0x1b3b388a
mov dword [esp + 0xac], 0xc06abb
xor dword [esp + 0xac], 0x2b7b17d1
mov eax, dword [esp + 0xac]
div edi
mov dword [esp + 0xac], eax
xor dword [esp + 0xac], 0x59ea5d4
mov dword [esp + 0x44], 0x9fdac6
shr dword [esp + 0x44], 4
add dword [esp + 0x44], 0x9b65
imul eax, dword [esp + 0x44], 0x7b
mov dword [esp + 0x44], eax
xor dword [esp + 0x44], 0x51f8b2b
mov dword [esp + 0xc4], 0xc74878
add dword [esp + 0xc4], 0x314b
imul eax, dword [esp + 0xc4], 0x41
mov dword [esp + 0xc4], eax
xor dword [esp + 0xc4], 0x32a5e883
mov dword [esp + 0x6c], 0x1587ec
xor edx, edx
xor dword [esp + 0x6c], 0x7496474
shr dword [esp + 0x6c], 7
mov eax, dword [esp + 0x6c]
push 0x2c
pop edi
div edi
xor edx, edx
mov dword [esp + 0x6c], eax
xor dword [esp + 0x6c], 0x54ad
mov dword [esp + 0x3c], 0xbebf62
shl dword [esp + 0x3c], 0xb
add dword [esp + 0x3c], 0xffffca16
shl dword [esp + 0x3c], 0xe
xor dword [esp + 0x3c], 0x36858000
mov dword [esp + 0xe8], 0x750de5
or dword [esp + 0xe8], 0xb336b270
xor dword [esp + 0xe8], 0xb377bff5
mov dword [esp + 0x30], 0xc175fb
imul eax, dword [esp + 0x30], 0x26
push 0x72
pop ebp
push 0x28
pop edi
mov dword [esp + 0x30], eax
shr dword [esp + 0x30], 5
xor dword [esp + 0x30], 0xfb5a89da
xor dword [esp + 0x30], 0xfbbf3581
mov dword [esp + 0xe4], 0x1a7820
or dword [esp + 0xe4], 0xb8d3f172
xor dword [esp + 0xe4], 0xb8dbf96d
mov dword [esp + 0x50], 0x97ff87
mov eax, dword [esp + 0x50]
div ebp
xor edx, edx
mov dword [esp + 0x50], eax
shr dword [esp + 0x50], 6
imul eax, dword [esp + 0x50], 0x5d
push 0x1c
mov dword [esp + 0x54], eax
xor dword [esp + 0x54], 0x1effe
mov dword [esp + 0x10c], 0x7c0450
mov eax, dword [esp + 0x10c]
div edi
xor edx, edx
mov dword [esp + 0x10c], eax
xor dword [esp + 0x10c], 0x319b6
mov dword [esp + 0xac], 0x260fad
add dword [esp + 0xac], 0x622a
mov eax, dword [esp + 0xac]
pop edi
div edi
xor edx, edx
mov dword [esp + 0xa8], eax
xor dword [esp + 0xa8], 0x15e7e
mov dword [esp + 0x10], 0x61f743
imul eax, dword [esp + 0x10], 0x25
push 0x66
pop edi
mov dword [esp + 0x10], eax
xor dword [esp + 0x10], 0xe2ee817
mov dword [esp + 0x10], 0x858eca
mov eax, dword [esp + 0x10]
div ebp
xor edx, edx
mov dword [esp + 0x10], eax
xor dword [esp + 0x10], 0x2de1a
mov dword [esp + 0x18], 0xcba1b8
mov eax, dword [esp + 0x18]
div edi
mov dword [esp + 0x18], eax
xor dword [esp + 0x18], 0xc2211053
add dword [esp + 0x18], 0xffff75b7
xor dword [esp + 0x18], 0xc2279606
mov dword [esp + 0x10], 0x614b46
shr dword [esp + 0x10], 4
xor dword [esp + 0x10], 0xcf9c3
mov dword [esp + 0x10], 0x794624
add dword [esp + 0x10], 0xb4d0
xor dword [esp + 0x10], 0x72cd5b
mov dword [esp + 0x10], 0xcdbe83
xor edx, edx
shr dword [esp + 0x10], 0xf
xor dword [esp + 0x10], 0x34ad6
mov dword [esp + 0x10], 0x24639d
mov eax, dword [esp + 0x10]
push 0x28
pop edi
div edi
push 0x21
mov dword [esp + 0x14], eax
xor edx, edx
xor dword [esp + 0x14], 0xe4507
mov dword [esp + 0x14], 0x4730ec
mov eax, dword [esp + 0x14]
pop edi
div edi
push 0x4e
mov dword [esp + 0x14], eax
xor edx, edx
xor dword [esp + 0x14], 0x2fb4b
mov dword [esp + 0x18], 0xb301d9
mov eax, dword [esp + 0x18]
pop edi
div edi
push 0x46
mov dword [esp + 0x18], eax
xor edx, edx
add dword [esp + 0x18], 0x8c1d
xor dword [esp + 0x18], 0x61f34
mov dword [esp + 0x1c], 0xfdcbf7
add dword [esp + 0x1c], 0x27a
add dword [esp + 0x1c], 0xffff891b
mov eax, dword [esp + 0x1c]
pop edi
div edi
push 0x2e
mov dword [esp + 0x1c], eax
xor edx, edx
xor dword [esp + 0x1c], 0x8575c
mov dword [esp + 0x18], 0xc1d3a0
shr dword [esp + 0x18], 0xc
shl dword [esp + 0x18], 2
xor dword [esp + 0x18], 0xb0f76
mov dword [esp + 0xc4], 0xeee25
shl dword [esp + 0xc4], 0xc
shl dword [esp + 0xc4], 4
xor dword [esp + 0xc4], 0xee2c14e7
mov dword [esp + 0x80], 0x8a49b3
or dword [esp + 0x80], 0xb0d6dc69
add dword [esp + 0x80], 0xffffa02a
or dword [esp + 0x80], 0x7fd27f38
xor dword [esp + 0x80], 0xffd81443
mov dword [esp + 0x9c], 0x628374
shr dword [esp + 0x9c], 2
add dword [esp + 0x9c], 0xffff73d9
mov eax, dword [esp + 0x9c]
pop edi
div edi
push 0x36
mov dword [esp + 0x9c], eax
xor edx, edx
xor dword [esp + 0x9c], 0x1ef4a
mov dword [esp + 0x118], 0xe4a1af
add dword [esp + 0x118], 0x32bc
xor dword [esp + 0x118], 0xec33da
mov dword [esp + 0x94], 0x595a50
add dword [esp + 0x94], 0xffffdbfa
add dword [esp + 0x94], 0xffffb344
mov eax, dword [esp + 0x94]
pop edi
div edi
mov dword [esp + 0x90], eax
xor dword [esp + 0x90], 0x6861f
mov dword [esp + 0xd8], 0x4d7ad3
add dword [esp + 0xd8], 0xc28a
xor dword [esp + 0xd8], 0x4ca34c
mov dword [esp + 0x100], 0xf1782b
xor dword [esp + 0x100], 0xe8a77c51
xor dword [esp + 0x100], 0xe85593aa
mov dword [esp + 0xcc], 0x42ea8e
mov eax, dword [esp + 0xcc]
xor edx, edx
push 0x2a
pop ebp
div ebp
xor edx, edx
mov dword [esp + 0xcc], eax
xor dword [esp + 0xcc], 0xcaa85
mov dword [esp + 0x9c], 0xa48e68
mov eax, dword [esp + 0x9c]
push 6
pop edi
div edi
xor edx, edx
mov dword [esp + 0x9c], eax
shl dword [esp + 0x9c], 0xc
xor dword [esp + 0x9c], 0xb6d58e9e
mov dword [esp + 0x34], 0x4ff2e7
mov eax, dword [esp + 0x34]
push 0xc
pop edi
div edi
xor edx, edx
mov dword [esp + 0x34], eax
shl dword [esp + 0x34], 6
shl dword [esp + 0x34], 0xc
xor dword [esp + 0x34], 0xa6466867
mov dword [esp + 0xe0], 0x4d7637
add dword [esp + 0xe0], 0xd199
xor dword [esp + 0xe0], 0x4dfa45
mov dword [esp + 0x118], 0xfee4b3
imul eax, dword [esp + 0x118], 0x23
push 0x3e
pop edi
mov dword [esp + 0x118], eax
xor dword [esp + 0x118], 0x22d37c34
mov dword [esp + 0x64], 0x24209
add dword [esp + 0x64], 0xffffcebc
xor dword [esp + 0x64], 0x847f2e61
add dword [esp + 0x64], 0xffff5302
xor dword [esp + 0x64], 0x847f4f7c
mov dword [esp + 0x2c], 0x4a587
imul eax, dword [esp + 0x2c], 0x4a
mov dword [esp + 0x2c], eax
add dword [esp + 0x2c], 0xffff9bf3
add dword [esp + 0x2c], 0xffff92e5
xor dword [esp + 0x2c], 0x15b504d
mov dword [esp + 0x8c], 0x6d05db
imul eax, dword [esp + 0x8c], 0x14
mov dword [esp + 0x8c], eax
shr dword [esp + 0x8c], 4
xor dword [esp + 0x8c], 0x556abaa4
xor dword [esp + 0x8c], 0x55e01079
mov dword [esp + 0x11c], 0x80cc5b
shr dword [esp + 0x11c], 0xd
xor dword [esp + 0x11c], 0xefc86
mov dword [esp + 0xc8], 0xc8e6e2
shl dword [esp + 0xc8], 8
shr dword [esp + 0xc8], 0x10
xor dword [esp + 0xc8], 0xafff3
mov dword [esp + 0x20], 0x560e69
add dword [esp + 0x20], 0x2793
imul eax, dword [esp + 0x20], 0xe
mov dword [esp + 0x20], eax
add dword [esp + 0x20], 0xc902
xor dword [esp + 0x20], 0x4bc6edc
mov dword [esp + 0x120], 0xfcaf67
mov eax, dword [esp + 0x120]
div edi
xor edx, edx
mov dword [esp + 0x120], eax
xor dword [esp + 0x120], 0xc0ba9
mov dword [esp + 0xf8], 0x81a14f
shr dword [esp + 0xf8], 0xb
xor dword [esp + 0xf8], 0xfb9cd
mov dword [esp + 0x110], 0x24333c
mov eax, dword [esp + 0x110]
div ebp
mov dword [esp + 0x110], eax
xor dword [esp + 0x110], 0x65bee
mov dword [esp + 0xb4], 0xe3a445
shr dword [esp + 0xb4], 5
xor edx, edx
shr dword [esp + 0xb4], 7
xor dword [esp + 0xb4], 0xdfdf
mov dword [esp + 0x54], 0x5f21d9
imul eax, dword [esp + 0x54], 0x54
push 0x79
pop edi
mov dword [esp + 0x54], eax
shl dword [esp + 0x54], 5
xor dword [esp + 0x54], 0xe372a7b
xor dword [esp + 0x54], 0xe8dc9c41
mov dword [esp + 0x74], 0xc44d01
xor dword [esp + 0x74], 0x373dd04
imul eax, dword [esp + 0x74], 0x30
mov dword [esp + 0x74], eax
xor dword [esp + 0x74], 0xfb03bbf0
xor dword [esp + 0x74], 0x496460ca
mov dword [esp + 0x24], 0x8213af
xor dword [esp + 0x24], 0x6d9501b2
or dword [esp + 0x24], 0x4d165578
shr dword [esp + 0x24], 4
xor dword [esp + 0x24], 0x6d55fab
mov dword [esp + 0x5c], 0x705526
shr dword [esp + 0x5c], 0xa
shl dword [esp + 0x5c], 9
shr dword [esp + 0x5c], 8
xor dword [esp + 0x5c], 0xb72c4
mov dword [esp + 0xd4], 0xc8093b
add dword [esp + 0xd4], 0xd043
xor dword [esp + 0xd4], 0xca3bde
mov dword [esp + 0x28], 0x1f9619
add dword [esp + 0x28], 0xffffbc34
imul eax, dword [esp + 0x28], 0x3e
mov dword [esp + 0x28], eax
imul eax, dword [esp + 0x28], 0x52
mov dword [esp + 0x28], eax
xor dword [esp + 0x28], 0x6e0edc82
mov dword [esp + 0xd0], 0x6d9960
or dword [esp + 0xd0], 0x9fb7a8f9
xor dword [esp + 0xd0], 0x9ff35e32
mov dword [esp + 0xa0], 0x447df2
shl dword [esp + 0xa0], 8
add dword [esp + 0xa0], 0xffff6cb2
xor dword [esp + 0xa0], 0x44714589
mov dword [esp + 0x40], 0x65db08
imul eax, dword [esp + 0x40], 6
mov dword [esp + 0x40], eax
add dword [esp + 0x40], 0x5f97
shr dword [esp + 0x40], 0xd
xor dword [esp + 0x40], 0x293b4
mov dword [esp + 0xdc], 0x3c7c20
xor dword [esp + 0xdc], 0x2c3d49c2
xor dword [esp + 0xdc], 0x2c080053
mov dword [esp + 0x38], 0x13c85
add dword [esp + 0x38], 0x8cd8
add dword [esp + 0x38], 0x6e3d
xor dword [esp + 0x38], 0xe59eace5
xor dword [esp + 0x38], 0xe5984999
mov dword [esp + 0x58], 0x6164ef
shl dword [esp + 0x58], 6
add dword [esp + 0x58], 0xffff2edc
or dword [esp + 0x58], 0xa66c888f
xor dword [esp + 0x58], 0xbe7947d5
mov dword [esp + 0x48], 0x991e82
add dword [esp + 0x48], 0xffff48fb
shr dword [esp + 0x48], 0xe
or dword [esp + 0x48], 0x69e4ac2c
xor dword [esp + 0x48], 0x69ef7d1b
mov dword [esp + 0xec], 0x9d94b2
or dword [esp + 0xec], 0xcead792c
xor dword [esp + 0xec], 0xceb9e800
mov dword [esp + 0x104], 0x20071e
mov eax, dword [esp + 0x104]
div edi
mov dword [esp + 0x104], eax
xor dword [esp + 0x104], 0xa654c
mov dword [esp + 0xb0], 0x223cb7
add dword [esp + 0xb0], 0x9bf0
or dword [esp + 0xb0], 0x79b7d361
xor dword [esp + 0xb0], 0x79b3b147
mov dword [esp + 0xfc], 0x8ed203
xor edx, edx
add dword [esp + 0xfc], 0xffff1a7b
xor dword [esp + 0xfc], 0x8be8c4
mov dword [esp + 0x60], 0xe0ac17
xor dword [esp + 0x60], 0xbcfe8cf2
mov eax, dword [esp + 0x60]
push 0x6b
pop edi
div edi
push 0xc
mov dword [esp + 0x64], eax
xor edx, edx
or dword [esp + 0x64], 0x3ee9ec5f
xor dword [esp + 0x64], 0x3fec9c1d
mov dword [esp + 0x74], 0x219bfa
shr dword [esp + 0x74], 4
add dword [esp + 0x74], 0x77e4
or dword [esp + 0x74], 0x2fb4141c
xor dword [esp + 0x74], 0x2fb2076e
mov dword [esp + 0x6c], 0x8926e2
shl dword [esp + 0x6c], 4
mov eax, dword [esp + 0x6c]
pop edi
div edi
push 0x5c
mov dword [esp + 0x6c], eax
xor edx, edx
add dword [esp + 0x6c], 0xffff5704
xor dword [esp + 0x6c], 0xbbfbcc
mov dword [esp + 0x18], 0xaed0cb
add dword [esp + 0x18], 0x9c17
add dword [esp + 0x18], 0xaf6d
xor dword [esp + 0x18], 0xb89bc1
mov dword [esp + 0x8c], 0x914ce9
or dword [esp + 0x8c], 0xceb3d4af
xor dword [esp + 0x8c], 0x5adaba1c
xor dword [esp + 0x8c], 0x3c292fbf
xor dword [esp + 0x8c], 0xa84ea968
mov dword [esp + 0x98], 0x90c891
add dword [esp + 0x98], 0xffff3667
mov eax, dword [esp + 0x98]
pop edi
div edi
push 0x3c
mov dword [esp + 0x98], eax
xor edx, edx
mov eax, dword [esp + 0x98]
pop edi
div edi
mov dword [esp + 0x94], eax
xor dword [esp + 0x94], 0xda682
mov dword [esp + 0xa4], 0xffcb83
shl dword [esp + 0xa4], 0xd
or dword [esp + 0xa4], 0xcebab625
xor dword [esp + 0xa4], 0xfff71570
mov dword [esp + 0x18], 0xfef1ee
shr dword [esp + 0x18], 8
add dword [esp + 0x18], 0xffff306e
or dword [esp + 0x18], 0x3331510b
xor dword [esp + 0x18], 0x3338227a
mov dword [esp + 0x80], 0xc7331d
shr dword [esp + 0x80], 7
add dword [esp + 0x80], 0x1d50
shl dword [esp + 0x80], 5
xor dword [esp + 0x80], 0x370898
mov dword [esp + 0x10], 0x519041
add dword [esp + 0x10], 0x7cd9
xor dword [esp + 0x10], 0x57f5a9
mov edi, dword [esp + 0x124]
mov ebp, dword [esp + 0x124]
mov edx, 0x68a9e90
mov eax, dword [esp + 0x78]
cmp esi, edx
jg 0x1001f309
je 0x1001f177
cmp esi, 0x2602436
je 0x1001f16d
cmp esi, 0x329d839
je 0x1001f163
cmp esi, 0x4bb42fe
je 0x1001f0fd
cmp esi, 0x506ebc3
je 0x1001f09c
cmp esi, 0x51daea9
jne 0x1001f403
push dword [esp + 0xa4]
mov edx, eax
push dword [esp + 0x98]
mov ecx, dword [esp + 0x90]
call fcn.10002b62
pop ecx
pop ecx
mov esi, 0x9a35046
mov ecx, dword [esp + 0x1c]
jmp 0x1001f024
push ecx
push dword [esp + 0xec]
push dword [esp + 0x98]
push dword [esp + 0x120]
sub esp, 0xc
push dword [esp + 0xb4]
mov edx, dword [esp + 0x9c]
mov ecx, dword [esp + 0xe0]
call fcn.1001dac6
mov edx, dword [esp + 0x120]
mov ebp, eax
mov ecx, dword [esp + 0xf8]
test ebp, ebp
mov eax, 0x4bb42fe
mov esi, 0xdf8c541
push 0
cmovne esi, eax
call fcn.10018519
add esp, 0x24
jmp 0x1001f3fa
push dword [esp + 0x2c]
push dword [esp + 0x68]
push ecx
push dword [esp + 0x138]
push ecx
push dword [esp + 0x12c]
push dword [esp + 0x16c]
push dword [esp + 0xfc]
push dword [esp + 0x54]
push ebp
push ecx
push ecx
push dword [esp + 0x138]
mov edx, dword [esp + 0xd0]
mov ecx, dword [esp + 0x100]
call fcn.100088c3
mov ecx, dword [esp + 0x50]
add esp, 0x34
test eax, eax
mov dword [esp + 0x78], eax
mov esi, 0x9a35046
mov edx, 0x68a9e90
cmovne esi, edx
jmp 0x1001f02d
mov esi, 0x2602436
jmp 0x1001f02d
mov esi, 0x506ebc3
jmp 0x1001f02d
mov eax, dword [esp + 0x128]
cmp dword [eax], 0
je 0x1001f1aa
push dword [esp + 0xc8]
mov edx, 0x10001524
push dword [esp + 0x120]
mov ecx, dword [esp + 0x94]
call fcn.1001dcf7
pop ecx
pop ecx
mov ecx, eax
mov dword [esp + 0x1c], ecx
mov eax, dword [esp + 0x3c]
xor edx, edx
or eax, dword [esp + 0x6c]
inc edx
or eax, dword [esp + 0xc4]
or eax, dword [esp + 0x44]
or eax, dword [esp + 0xac]
or eax, dword [esp + 0x84]
or eax, dword [esp + 0xf0]
or eax, dword [esp + 0x4c]
mov esi, dword [esp + 0x15c]
or eax, dword [esp + 0xbc]
and esi, edx
je 0x1001f1f0
or eax, 0x803000
push ecx
push dword [esp + 0x7c]
push dword [esp + 0x7c]
push dword [esp + 0x60]
push ecx
push dword [esp + 0xc8]
push dword [esp + 0x128]
push dword [esp + 0x114]
push dword [esp + 0x160]
push dword [esp + 0x144]
push ecx
push dword [esp + 0x4c]
push eax
call fcn.100075fa
push dword [esp + 0x90]
mov edx, dword [esp + 0x54]
mov edi, eax
mov ecx, dword [esp + 0x5c]
call fcn.1000a8b0
add esp, 0x38
test edi, edi
je 0x1001f2ff
push dword [esp + 0xd0]
xor eax, eax
mov ecx, edi
push dword [esp + 0x2c]
inc eax
push dword [esp + 0x38]
mov dword [esp + 0x100], eax
lea eax, [esp + 0x100]
push eax
push dword [esp + 0xe4]
push 4
pop edx
call fcn.10009670
add esp, 0x14
test esi, esi
je 0x1001f2f5
push dword [esp + 0x38]
lea eax, [esp + 0xf8]
push dword [esp + 0xe0]
lea ecx, [esp + 0x12c]
push eax
push edi
push dword [esp + 0x50]
push dword [esp + 0xb4]
mov edx, dword [esp + 0xfc]
call fcn.1001408e
mov eax, dword [esp + 0xc0]
mov ecx, edi
push dword [esp + 0x104]
or dword [esp + 0x110], eax
lea eax, [esp + 0x110]
push dword [esp + 0x64]
push dword [esp + 0x70]
push eax
push dword [esp + 0x80]
mov edx, dword [esp + 0x150]
call fcn.10009670
add esp, 0x2c
mov esi, 0xbee37f5
jmp 0x1001f096
mov esi, 0x51daea9
jmp 0x1001f096
cmp esi, 0x81a6b17
je 0x1001f3e0
cmp esi, 0x9a35046
je 0x1001f410
mov eax, 0xb70b8d2
cmp esi, eax
je 0x1001f3c0
cmp esi, 0xba06d79
je 0x1001f397
cmp esi, 0xbee37f5
jne 0x1001f403
mov eax, dword [esp + 0x128]
mov ecx, dword [eax]
test ecx, ecx
je 0x1001f354
mov eax, dword [eax + 4]
jmp 0x1001f356
xor eax, eax
push dword [esp + 0x60]
push eax
push dword [esp + 0x104]
mov edx, dword [esp + 0xbc]
push edi
push dword [esp + 0x158]
push ecx
push ecx
mov ecx, dword [esp + 0x120]
call fcn.10002ae4
add esp, 0x1c
neg eax
sbb esi, esi
and esi, 0x3860262
add esi, 0x81a6b17
jmp 0x1001f096
mov edx, dword [esp + 0xb8]
mov ecx, edi
call fcn.100209b5
mov ecx, dword [esp + 0x10c]
mov esi, 0x81a6b17
cmp eax, ecx
mov eax, 0xb70b8d2
cmove esi, eax
jmp 0x1001f096
mov edx, dword [esp + 0x134]
mov ecx, edi
call fcn.1001a2e8
test eax, eax
mov esi, 0x81a6b17
push 1
pop eax
cmovne ebx, eax
jmp 0x1001f096
push dword [esp + 0x14]
mov edx, edi
push dword [esp + 0x6c]
mov ecx, dword [esp + 0x78]
call fcn.10002b62
pop ecx
pop ecx
mov esi, 0x51daea9
mov ecx, dword [esp + 0x1c]
mov edx, 0x68a9e90
cmp esi, 0xdf8c541
je 0x1001f428
jmp 0x1001f029
push dword [esp + 0x10]
mov edx, ebp
push dword [esp + 0x84]
mov ecx, dword [esp + 0x20]
call fcn.10002b62
pop ecx
pop ecx
pop edi
pop esi
pop ebp
mov eax, ebx
pop ebx
add esp, 0x120
ret